我有一个包含倍数.war的.ear,我想将它部署到jboss 6.4.7服务器中。问题是.war中的一个正在使用jboss的模块(hibernate-jpa-2.0),但该应用程序需要hibernate-jpa-2.1版本。如何告诉我的战争不使用这个jboss模块。我已将一个jboss-deployment-structure添加到Ear / application / META-INF中,但不包括:
sed -i.bak $'s/ \{1,\}/\t/g' file
但没有工作..
" javax.persistence.api"写在jboss服务器上的module.xml上。
感谢您的帮助。
答案 0 :(得分:1)
添加以下
<jboss-deployment-structure>
<ear-subdeployments-isolated>true</ear-subdeployments-isolated>
<sub-deployment name="myapp.war">
<exclude-subsystems>
<subsystem name="jpa" />
</exclude-subsystems>
<exclusions>
<module name="javaee.api" />
</exclusions>
</sub-deployment>
</jboss-deployment-structure>
子系统是扩展程序添加的功能集。它 定义如何使用和配置它。它也在中定义 使用EAP配置文件(standalone.xml或domain.xml) 个人资料下的标签。 对于在EAP实例中添加的每个扩展,该扩展的功能和属性都是 配置了
<subsystem>
元素。
另一个选择可以是用新的替换JBOSS中的jar