Log4j2 配置 - 找不到 log4j2 配置文件

新手上路,请多包涵

最近我决定学习如何使用 log4j2 记录器。我下载了所需的 jar 文件、创建了库、xml 配置文件并尝试使用它。不幸的是我在控制台(Eclipse)中得到了这个声明:

 ERROR StatusLogger No log4j2 configuration file found. Using default configuration:       logging only errors to the console.

这是我的测试类代码:

 package log4j.test;

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

public class Log4jTest
{
    static final Logger logger = LogManager.getLogger(Logger.class.getName());

    public static void main(String[] args) {
        logger.trace("trace");
        logger.debug("debug");
        logger.info("info");
        logger.warn("warn");
        logger.error("error");
        logger.fatal("fatal");
    }
}

和我的 xml 配置文件:

 <?xml version="1.0" encoding="UTF-8"?>
<Configuration package="log4j.test"
               status="WARN">
    <Appenders>
        <Console name="Console" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
        </Console>
    </Appenders>
    <Loggers>
        <Logger name="log4j.test.Log4jTest" level="trace">
            <AppenderRef ref="Console"/>
        </Logger>
        <Root level="trace">
            <AppenderRef ref="Console"/>
        </Root>
    </Loggers>
</Configuration>

我也尝试使用不带 <Logger> 标签和包规范的 xml 以及各种文件夹/包目录,但它没有帮助。现在我的 log4j2.xml 文件直接位于 eclipse 的项目文件夹中。

原文由 Qbisiek 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1k
1 个回答

这是一个没有maven等的简单eclipse java项目吗?在这种情况下,您需要将 log4j2.xml 文件放在 src 文件夹下,以便能够在类路径中找到它。如果你使用 Maven 把它放在 src/main/resourcessrc/test/resources

原文由 Tomasz W 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题