maven - Logback 不适用于 JBoss EAP 6.1

标签 maven jboss logback

我有一个 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/

相关文章:

java - 我可以将属性注入(inject) JPA 实体监听器吗

java - 我如何强制 MyEclipse 将 JavaScript 文件热部署到我的 JBoss 实例?

java - 更改 logback 日志级别

android - 添加 Eclipse "Android Library"项目并通过 Maven 构建

Java/马文 : different slf4j versions in different projects causing build errors on integration

java - Maven:如何使用故障安全插件运行/包含 jar 中的类?

java - 如何从包含的文件中删除/禁用/覆盖附加程序?

java - 如何更改在项目中创建文件的文件夹?

java.lang.OutOfMemory错误: Java heap space in every 2-3 Hours

spring-boot - 如何动态(通过环境变量)激活/停用 logback 或 logback appender?