gpt4 book ai didi

java - HQL 中没有此类方法错误

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:06:15 25 4
gpt4 key购买 nike

出现以下错误

java.lang.NoSuchMethodError: org.hibernate.hql.antlr.HqlBaseParser.recover(Lantlr/RecognitionException;Lantlr/collections/impl/BitSet;)V
org.hibernate.hql.antlr.HqlBaseParser.selectFrom(HqlBaseParser.java:1173)
org.hibernate.hql.antlr.HqlBaseParser.queryRule(HqlBaseParser.java:702)
org.hibernate.hql.antlr.HqlBaseParser.selectStatement(HqlBaseParser.java:296)
org.hibernate.hql.antlr.HqlBaseParser.statement(HqlBaseParser.java:159)
org.hibernate.hql.ast.QueryTranslatorImpl.parse(QueryTranslatorImpl.java:248)

当执行下面的hql时

select object(o),p.dateApply,p.reason,p.Approver from Person as o "+
" com.jpa.entities.Application as p where o.id = p.nricNo and o.batchNumber= :batchNo

如果我删除以下查询

p.dateApply,p.reason,p.Approver

它工作得很好。我想要的是从 Person 实体和 Application 实体返回值。

希望有人能帮助我,因为我是 HQL 的新手。

最佳答案

听起来您有不兼容的与 Hibernate 相关的 JAR,或者部分或所有这些 JAR 的副本。可能是因为您升级到不同版本的 Hibernate 而没有删除旧的 JAR(或类似的东西)。

如果在 lib1.jar 和 lib2.jar 中发现类 com.my.MyClass 的不同版本,并且类加载器从 lib1.jar 加载 MyClass,但是“正确的”MyClass(具有 JRE 方法的那个是looking for)在 lib2.jar 中找到,您将遇到您所看到的问题。

关于java - HQL 中没有此类方法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21111478/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com