Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hibernate 我将jpa2 jar文件添加到库中,但仍然可以';找不到getCriteriaBuilder方法_Hibernate_Jpa 2.0_Criteria Api - Fatal编程技术网

Hibernate 我将jpa2 jar文件添加到库中,但仍然可以';找不到getCriteriaBuilder方法

Hibernate 我将jpa2 jar文件添加到库中,但仍然可以';找不到getCriteriaBuilder方法,hibernate,jpa-2.0,criteria-api,Hibernate,Jpa 2.0,Criteria Api,我正在使用HibernateJPA,我可以成功地使用jpql查询,但我不能使用CriteriaAPI。我已经阅读并将hibernate-jpa-2.0-api-1.0.1.Final文件添加到库中,但仍然找不到getCriteriaBuilder()方法。请帮帮我 import javax.persistence.criteria.CriteriaBuilder; import javax.persistence.EntityManager; import javax.persistence.E

我正在使用HibernateJPA,我可以成功地使用jpql查询,但我不能使用CriteriaAPI。我已经阅读并将hibernate-jpa-2.0-api-1.0.1.Final文件添加到库中,但仍然找不到getCriteriaBuilder()方法。请帮帮我

import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;

method(){
    EntityManagerFactory emf = Persistence.createEntityManagerFactory("Persistenceunit");
    EntityManager em = emf.createEntityManager();
    CriteriaBuilder cb = em.getCriteriaBuilder();
}
我正在使用这些库:
我的hibernate库文件:antlr-2.7.6.jar,asm.jar,asm-attrs.jar,cglib-2.1.3.jar,commons-collections-2.1.1.jar,dom4j-1.6.1.jar,ehcache-1.2.3.jar,ejb3-persistence.jar,hibernate3.jar,hibernate-annotations.jar,hibernate-commons-annotations.jar,hibernate-entitymanager.jar,hibernate-jpa-2.0-api-1.0.1.Final.jar,hibernate-tools.jar,javassist.jar、jdbc2_0-stdext.jar、jta.jar、jtidy-r8-20060801.jar。这是什么原因造成的


还有其他库:jsf-api.jar、jsf-impl.jar、JSTL 1.1-standard.jar、JSTL 1.1-JSTL.jar、commons-collections-3.2.1.jar、commons-digester3-3.0.jar和prettyfaces

在为2.0添加JPA1.0库时是否删除了JPA1.0库?如果不是,那么看起来EntityManager就是从那里挑选出来的。这就是为什么它失败的第一点是JPA2中引入的方法。

我的hibernate库文件:antlr-2.7.6.jar、asm.jar、asm-attrs.jar、cglib-2.1.3.jar、commons-collections-2.1.1.jar、dom4j-1.6.1.jar、ehcache-1.2.3.jar、ejb3-persistence.jar、hibernate3.jar、hibernate-annotations.jar、hibernate-annotations.jar、hibernate-commons-commons-annotations.jar、,hibernate-entitymanager.jar、hibernate-jpa-2.0-api-1.0.1.Final.jar、hibernate-tools.jar、javassist.jar、jdbc2_0-stdext.jar、jta.jar、jtidy-r8-20060801.jar。这是什么原因造成的?还有其他库:jsf-api.jar、jsf-impl.jar、JSTL 1.1-standard.jar、JSTL 1.1-JSTL.jar、commons-collections-3.2.1.jar、commons-digester3-3.0.jar和prettyfacesejb3-persistence.jar可能是这个问题的根源,因为它包含EntityManager.class。下一步可能是删除那些属于以前版本Hibernate的库。我删除了ejb3-persistence.jar和所有Hibernate库,并添加了这些Hibernate-distribution-3.6.7.Final jar文件:antlr-2.7.6.jar、dom4j-1.6.1.jar、hibernate3.jar、Hibernate-jpa-2.0-api-1.0.Final.jar、javassist-3.12.0.GA.jar、jta-1.jar、,slf4j-api-1.6.1.jar。现在我的项目可以找到getCriteriaBuilder方法,但是当项目运行时,出现了以下错误:java.lang.AbstractMethodError:org.hibernate.ejb.EntityManagerImpl.getCriteriaBuilder()Ljavax/persistence/criteria/CriteriaBuilder;堆栈跟踪没有任何消息超过该消息。