我的組態檔是類路徑的路徑。至少我是這么認為的。我將 log4j.properties 檔案放在資源檔案夾中,而 log4j 對它沒有任何作用。即使我洗掉它,也不會發生錯誤。
任何人都可以看到我正在使用 maven

LoggerTest 的內容:
package com.dersimi.stella.logger;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
public class LoggerTest {
public static void main(String[] args) {
System.out.println("xxx");
Logger logger = LogManager.getLogger(LoggerTest.class);
logger.info("Hello this is an info message");
System.out.println("xxx");
}
}
程式輸出:
xxx
xxx
log4j.properties 的內容:
log4j.rootLogger=INFO, console
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.Threshold=INFO
log4j.appender.console.Target=System.out
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.conversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p - %m%n
在 pom.xml 中沒有什么例外,只是依賴 org.apache.logging.log4j log4j-core 2.17.2,編譯器源目標是 16,沒有插件
uj5u.com熱心網友回復:
主要問題是您正在嘗試對 log4j2 使用 l og4j (第一個)配置。
首先確保您具有以下依賴項:
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.17.0</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.17.0</version>
</dependency>
其次,有一個名為log4j2.properties的檔案,其內容如下:
status = warn
appender.console.type = Console
appender.console.name = LogToConsole
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = [%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n
rootLogger.level = info
rootLogger.appenderRef.stdout.ref = LogToConsole
參考:https ://mkyong.com/logging/log4j2-properties-example/
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/439487.html
