提问者:小点点

jboss-deployment-structure.xml有什么问题?我试图排除依赖性。排除在WAR中有效,但在EAR中无效


因此,我们发现JBoss 7.1 EAP提供了自己版本的Jackson Databind。这个版本会干扰我们的部署,因为我们在WAR中有一个新版本。我们已经通过在WAR级别的WEB-INF中包含jboss-deployment-structure.xml证明了这一理论:

<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure>
    <deployment>
        <exclude-subsystems>
            <subsystem name="jaxrs"/>
        </exclude-subsystems>
    </deployment>
</jboss-deployment-structure>

这使 WAR 在以前收到错误时自行部署而不会出错。但是,当尝试在 EAR 部署级别实现相同的解决方案时,我没有成功。我尝试将 jboss-deployment-structure.xml 放在 EAR 的 META-INF、WEB-INF 和根级别。我已经对所有数量的不同配置都做到了这一点,但我无法让它正确排除 jaxrs。值得一提的是,这是我第一次运行 JBoss 配置,我可能会错过一些非常简单的东西。

EAR级别文件:

<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.2">
    <deployment>
        <exclude-subsystems>
            <subsystem name="jaxrs" />
        </exclude-subsystems>
    </deployment>
    <sub-deployment name="myWar.war">
        <exclude-subsystems>
            <subsystem name="jaxrs" />
        </exclude-subsystems>
    </sub-deployment>
</jboss-deployment-structure>

共1个答案

匿名用户

原来这就是答案。就像它站在这里一样。另一个开发人员将相同的文件放入他的构建中,并且成功了。我不知道他的环境和我的环境有什么不同,但我认为这个问题已经解决了。