在 jboss-部署结构中排除 httpclient/httpcore

Excluding httpclient/httpcore in jboss-deployment-structure

我最近将 apache httpclient 更新为 4.5.1,将 httpcore 更新为 4.4.4,但出于某种原因,我的 Jboss 服务器具有两者的旧版本 (4.3.6)。我正在通过 ivy 引入新版本,但它们似乎被服务器上的版本覆盖了。我已经尝试制作自己的 jboss-deployment-structure.xml 文件,但它似乎不起作用,而且关于这件作品的确切运作方式的文档很少。我需要在什么特定级别阻止模块以防止 jboss 加载覆盖 ivy 的依赖项?

<jboss-deployment-structure>
<deployment>
    <exclusions>
        <module name="org.slf4j" />
        <module name="org.apache.log4j" />
        <module name="org.apache.commons.logging" />
        <module name="org.apache.httpcomponents" />
    </exclusions>
    <dependencies>
        <module name="org.codehaus.jackson.jackson-core-asl" />
        <module name="org.codehaus.jackson.jackson-mapper-asl" />
    </dependencies>
</deployment>
</jboss-deployment-structure>

进度更新:看起来应用程序依赖于 jaxrs 和 xalan,这反过来又引入了依赖项。呃

来自 hibernate 3 jboss-eap-quickstarts:

<exclusions>
    <!-- Exclude container version of hibernate. By default its version 4, we want 
        bundled version 3 loaded -->
    <module name="org.hibernate" slot="main" />
</exclusions>

在您的应用程序构建中,在引入 jaxrs 和 xalan 的依赖项中,将 httpclient 和 httpcore 的范围设置为提供。