搭建ssh的整个框架实在是一个头疼之处,使用eclipse的 add *** capabilities后,由于struts的jar包里的antlr-2.7.2.jar,比Hibernate3.3自带的antlr-2.7.6.jar的版本要低。所以导致导致了antlr.collections.AST.getLine()。
解决方法目前测试的有2个。
第一种方法:
- 选择Myeclipse的window中的preference
- 在里面找到Myeclipse–project capabilitie–struts2
- 将其中的antlr_2.7.2jar移除
- 点击add jar/zip,把antlr_2.7.6.jar添加进去即可,这个文件可以自己去找
- 之后tomcat中,remove deployment一次,再add deployment一次即可
第二种方法:
这种方法比较危险,因为它要删除Myeclipse自带的一个文件。
在MyEclipse的configurationorg.eclipse.osgibundles目录下搜索antlr-2.7.2.jar,删除所有antlr-2.7.2的jar包文件; 继续在MyEclipse的Commonplugins目录中 搜索 struts.jar,用winRAR之类的软件将其中的jar包打开,删除lib或者data下的antlr-2.7.2.jar文件,如果没有就不用管。