antlr.collections.AST.getLine()I 异常

本文介绍了解决使用HQL查询时出现异常的方法。通过排除antlr不同版本间的冲突,特别是Struts2自带的antlr-2.7.2.jar与Hibernate3自带的antlr-2.7.6.jar之间的冲突。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >



原以为是自己hql语句的问题, 后来发现不管怎么测试 只要是用find() 查询hql 都有这个异常 才怀疑是环境配置的问题.



结论:

antlr-2.7.2.jarantlr-2.7.6.jar包冲突 ,需要在MyEclipse里屏蔽掉版本低的2.7.2 .


步骤:

Window->Preferences->MyEclipse->Project Capabilities->然后选中Struts-> 找到antlr-2.7.2-> 右边Remove掉就好了

之后在tomcat目录下搜出antlr-2.7.2.jar删掉 ( 调试失败那一次,拷贝进WEB-INF/lib中的 )


原因是:

Struts2(或者Struts1.x)自带antlr-2.7.2.jar ,Hibernate3自带antlr-2.7.6.jar ,结果在HQL时就冲突了.

直接搜出全部antlr-2.7.2.jar删掉也不行, 我这MyEclipse10会自动上网上下载 等于你根本删不掉.





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值