当我将 Hibernate 5 添加到我的网站时,我无法让它在 Glassfish 4.1.1 中运行。我总是收到错误
java.lang.NoSuchMethodError:
org.jboss.logging.Logger.debugf(Ljava/lang/String;I)V
我尝试替换 Glassfish 模块文件夹中的 jboss-logging 库,就像我读到类似问题的答案一样,但它没有改变任何内容。我还尝试使用 Hibernate 4,但这又出现了另一个错误。
就我而言,我在 tomcat 上运行带有 JPA 注释的 Hibernate 5,当我更改为 glassfish 4.1 时停止工作
错误:
未找到 hibernate.properties
确保: src/main/resources/hibernate.cfg.xml 存在
如果你只有 hibernate-core 的依赖,我正在使用 hibernate-annotations 和 hibernate-common-annotations,它会产生冲突。 hibernate 5不需要这两个,我在某处读过。尝试删除;)
之后出现新的错误:
java.lang.NoSuchMethodError: org.jboss.logging.Logger.debugf(Ljava/lang/String;I)V
原因是最旧的 jboss-logging.jar 位于:
“YOUR_GLASSFISH_FOLDER/glassfish/模块”
为什么? hibernate 5 依赖于最新版本的
jboss-logging,并且 glassfish 4 使用最旧的版本,即使您
在 POM 文件中声明最新版本。实际上我正在使用:
org.jboss.logging jboss-logging 3.3.0.Final
Then I 下载它并替换模块路径中旧的 .jar然后它又恢复工作了,我花了两天时间试图解决这个问题,我希望它能解决
有助于解决一些未来的问题=D
我使用此链接来帮助我:https://medium.com/@mertcal/using-hibernate-5-on-payara-cc242212a5d6#.npq2hdprz
就我而言,另一个解决方案可能是回到最后一个 Hibernate 4 版本(4.3.11.Final),但在我看来它已经太旧了
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)