最近我决定学习如何使用 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 许可协议
这是一个没有maven等的简单eclipse java项目吗?在这种情况下,您需要将
log4j2.xml
文件放在src
文件夹下,以便能够在类路径中找到它。如果你使用 Maven 把它放在src/main/resources
或src/test/resources