java.lang.NoSuchMethodError: antlr.collections.AST.getLine()I
reflect.InvocationTargetException
当在几种框架集成的时候,在调用HibernateDaoSupport中的某个方法时会出现:
java.lang.NoSuchMethodError: antlr.collections.AST.getLine()I 的错误。这是因为在struts2自带的antlr-2.7.2.jar包的版本较低。
需要换成antlr-2.7.6.jar。其实在项目中已经存在了antlr-2.7.6.jar这个包,现在唯一需要做的就是删除antlr-2.7.2.jar包。
选择windows---preferences---在文本框中搜索struts 2(中间有空格)---选择struts 2---选择antlr-2.7.2.jar---Remove---OK。
如果错误将依然出现,清理一下tomcat缓存,程序将正常运行。还是出现,说明还有包冲突,也可能是commons-collections-3.1.jar与commons-collections-3.2.jar包的冲突呀,按照以上方法删除之,即可。最好重启下Tomcat