休眠类型和 JBoss 兼容性问题



我想使用 hibernate 类型库使用 JPA 和 Hibernate 将 JSON 集合映射到 Postgres JSONB 数据库列,但是当我部署我的应用程序时,我收到以下错误:

Caused by: java.lang.NoClassDefFoundError: org/hibernate/annotations/common/reflection/XProperty
at com.vladmihalcea.hibernate.type.json.internal.JsonTypeDescriptor.setParameterValues(JsonTypeDescriptor.java:58) 
at com.vladmihalcea.hibernate.type.json.JsonBinaryType.setParameterValues(JsonBinaryType.java:66) 
at org.hibernate.type.TypeFactory.injectParameters(TypeFactory.java:142)`

该类确实存在于 JBoss 提供的 jar 中,但看起来 ModuleClassLoader 无法找到它。JBoss 提供的 Hibernate 版本是 5.1.10.Final-redhat-1,定义 XProperty 类的 hibernate-commons-annotations 版本是5.0.1.Final-redhat-2知道让事情运转缺少什么吗?多谢

Wildfly 提供休眠,并在耳朵中搜索该类。我把耳朵的绒球换了,所以:

路径:"Maven-ear-plugin".configuration.archive

<manifestEntries>
<Dependencies>org.hibernate.commons-annotations</Dependencies>
</manifestEntries>

所以找到XProperty类。

H.

这也可以在WEB-INF/jboss-deployment-structure.xml文件中配置为:

<jboss-deployment-structure>
<deployment>
<dependencies>
<module name="org.hibernate.commons-annotations"/>
</dependencies>
</deployment>
</jboss-deployment-structure>

最新更新