这个问题是this one的分拆!
我现在可以将我的项目配置为使用不同版本的Hibernate,而我的JBoss安装有第二个名为" 5.1.1.Final" (位于...\jboss-as-7.1.3.Final\modules\org\hibernate\5.1.10.Final
),其中包含以下module.xml
文件:
<module xmlns="urn:jboss:module:1.1" name="org.hibernate:5.1.10.Final">
<resources>
<resource-root path="hibernate-core-5.1.10.Final.jar"/>
<resource-root path="hibernate-entitymanager-5.1.10.Final.jar"/>
<resource-root path="hibernate-infinispan-5.1.10.Final.jar"/>
<!-- Insert resources here -->
</resources>
<dependencies>
<module name="asm.asm"/>
<module name="javax.api"/>
<module name="javax.persistence.api"/>
<module name="javax.transaction.api"/>
<module name="javax.validation.api"/>
<module name="org.antlr"/>
<module name="org.apache.commons.collections"/>
<module name="org.dom4j"/>
<module name="org.infinispan" optional="true"/>
<module name="org.javassist"/>
<module name="org.jboss.as.jpa.hibernate" slot="4" optional="true"/>
<module name="org.jboss.logging"/>
<module name="org.hibernate.envers" services="import" optional="true"/>
<module name="org.hibernate.commons-annotations"/>
</dependencies>
</module>
然而,当JBoss启动时,我收到以下错误消息:ParseError at [row,col]:[26,72] Message: Invalid/mismatched module name (expected org.hibernate:5.1.10.Final)
。
我无法理解为什么会显示此消息,因为所需的模块名称(org.hibernate:5.1.10.Final
)是我在文件中指定的确切名称(name="org.hibernate:5.1.10.Final"
);
我缺少什么?
答案 0 :(得分:1)
slot
是一个单独的属性。它应该如下所示。
<module xmlns="urn:jboss:module:1.1" name="org.hibernate" slot="5.1.10.Final">
另外,您可能需要考虑尝试升级到WildFly 11,当前版本是WildFly 11.0.0.Beta1。我不确定Hibernate 5.1.x是否适用于JBoss AS 7.x. WildFly 10.1.0.Final使用Hibernate 5.0.10.Final。