2011-03-11 46 views
1

我们正在从3.3.2迁移到新的Hiberbate 3.5.0最终版本。根据文档复制hibernate3.jar和hibernate-jpa-2.0-api-1.0.0.Final.jar并删除所有旧的jar文件。 但服务器在启动过程中,我们越来越 java.lang.NoSuchMethodError:使用javax /持久/ SPI/PersistenceUnitInfo.getSharedCacheMode()Ljavax /持久/ SharedCacheMode休眠3.5 jar文件

这是固定由3.3增加休眠,entitymanager.jar文件.2版本​​。但这与3.5.0文档不一致。

任何指针,非常感谢。

回答

2

JBoss.org public repository中有hibernate-entitymanager-3.5.0-Final.jar(以及一些更新的版本)。

确保拥有正确的依赖JAR的最简单方法是使用依赖管理工具,如Apache Maven。在Maven的,你可以参考Hibernate的EntityManager的,像这样:

<dependency> 
    <groupId>org.hibernate</groupId> 
    <artifactId>hibernate-entitymanager</artifactId> 
    <version>${hibernate.version}</version> 
</dependency> 

而且将在所有必要的JAR拉(我的项目,使用Hibernate的EntityManager 3.5.4决赛),它希望在休眠芯拉断, hibernate-jpa-2.0.-api,slf4j-api,hibernate-annotations,javassist和cglib。 (请参阅附加的映像,从NetBeans的依赖关系图实用程序快照。)

dependency diagram