无法在JBoss 6 EAP上排除logmanager模块

时间:2012-10-01 13:16:48

标签: java log4j jboss6.x

我正在尝试从JBoss 6 EAP中的jboss-deployment-structure.xml中排除所有日志记录模块。

我的jboss-deployment-structure.xml是:

<jboss-deployment-structure>
  <deployment>
    <exclusions>
      <module name="org.apache.log4j" />
      <module name="org.jboss.logging" />
      <module name="org.jboss.logmanager" />
      <module name="org.jboss.log4j.logmanager" />
    </exclusions>
  </deployment>
</jboss-deployment-structure>

因此,在我使用所述配置部署我的.war后,我得到:

[ModuleClassLoader for Module "org.jboss.log4j.logmanager:main" from local module loader @10ab323 (roots: /home/me/dev/jboss-eap-6.0/modules)] whereas object of type "org.apache.log4j.ConsoleAppender" was loaded by [ModuleClassLoader for Module "deployment.myapp.war:main" from Service Module Loader].

所以我一般都想让JBoss停止尝试加载log4j并让我的应用程序加载它。

是否可以禁用logmanager模块?

谢谢,

1 个答案:

答案 0 :(得分:1)

我能够使用这个jboss-deployment-structure.xml

来解决这个问题
<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.2">
<deployment>
    <exclusions>
        <module name="org.apache.log4j"/>
        <module name="org.apache.commons.logging"/>
    </exclusions>
</deployment>

我在WEB-INF下创建的。您还应该将您的log4j.jar放在WEB-INF / lib中。