我有一个 maven web 应用程序,我在其中使用 logback 和 JBoss EAP 6.1 作为服务器。问题是当我在服务器上部署它时,我的 logback.xml 被忽略,并且使用 logback 的默认配置,它在控制台而不是我的日志文件上打印。如果我在 tomcat 上部署我的应用程序,日志记录工作正常。
我已将 logback.xml 放在 src/main/resources 中。
在 - Logging Configuration in Logback + SL4J + JBoss EAP 6.0 发现类似问题
和
Logback and Jboss 7 - don't work together?
但是没用...
最佳答案
忘记之前分享解决方案了..这里是 -
我们需要在 jboss-deployment-structure.xml 中添加以下几行
<exclusions>
<module name="org.apache.commons.logging" />
<module name="org.slf4j" />
<module name="org.slf4j.ext" />
<module name="org.slf4j.impl" />
<module name="org.apache.log4j" />
</exclusions>
所以整个文件看起来像 -
<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure>
<deployment>
<!-- Exclusions allow you to prevent the server from automatically adding
some dependencies -->
<exclusions>
<module name="org.apache.commons.logging" />
<module name="org.slf4j" />
<module name="org.slf4j.ext" />
<module name="org.slf4j.impl" />
<module name="org.apache.log4j" />
</exclusions>
</deployment>
</jboss-deployment-structure>
如果你有一个 Maven 项目,你可以把这个文件放在 -
<project>/webapp/META-INF/jboss-deployment-structure.xml
现在日志记录将正常工作。
关于maven - Logback 不适用于 JBoss EAP 6.1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20445172/