java - 未使用 log4j 配置

标签 java jakarta-ee struts2 log4j

我的 log4j 记录器不想使用要配置的 log4j.xml 文件。该文件位于 src 文件夹中,如下所示:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration>
    <appender name="ROLLING" class="org.apache.log4j.RollingFileAppender">
        <param name="File" value="C:\debug\myproject\logfile.log" />
        <param name="MaxFileSize" value="10024KB" />
        <param name="MaxBackupIndex" value="5" />
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%-5p %d{dd-MM HH:mm:ss,SSS} (%F:%M:%L)  -%m%n" />
        </layout>
        <filter class="org.apache.log4j.varia.LevelRangeFilter">
            <param name="LevelMin" value="DEBUG" />
            <param name="LevelMax" value="FATAL" />
        </filter>
    </appender>
    <root>
        <level value="DEBUG" />
        <appender-ref ref="ROLLING" />
    </root>
</log4j:configuration>

但是logfile.log仍然是空的,并且控制台中没有DEBUG行。

注意:这是一个基于 JBoss 7.1.0 并使用 Struts2 的 Java EE 项目。

最佳答案

以下答案并不完全是我的。它是由 OP 发布在问题本身中的,因此我将其移至此社区 wiki 答案中。

<小时/>

我通过显式配置日志配置解决了这个问题。

请注意,如果使用文件配置,您将无法在运行时更改配置。

有关详细信息,请参阅:https://docs.jboss.org/author/display/AS71/How+To#HowTo-HowdoIuselog4j.propertiesorlog4j.xmlinsteadofusingtheloggingsubsystemconfiguration%3F

关于java - 未使用 log4j 配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15026408/

相关文章:

Java:添加 boolean 检查方法来检查 SQL 表中的数据以复制到文本文件

Java,多个字母分配给一个变量

java - 为什么当我移动 @SpringBootApplication 时 Spring Autowire 会失败?

用自定义字符串替换美元符号 ($) 变量的 Java EE 方法

java - JPA 2.0/EclipseLink 和 sqlite 3.7.2 - 无法创建表

struts2 - 对 Struts 将页面参数填充到操作成员变量感到困惑

java - 没有为操作 <class> 和结果输入定义结果

java - 如何从操作类中选择特定对象

java - 将 Spring 与 Spark 一起使用

java - 我如何连接两个用户,以便他们可以使用 J2EE 网络技术(JSP、Spring 等)共享公共(public)对象(游戏实例)?