原因
同时引入了log4j和log4j2 jar
解决方法
只留一个
比如log4j
log4j配置
maven
<!-- Log4j 1.x -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<!-- SLF4J 桥接 -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.36</version>
</dependency>
log4j.properties
# 设置日志级别(DEBUG, INFO, WARN, ERROR, FATAL)
log4j.rootLogger=INFO, console, file
# 控制台输出
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}] [%p] %c - %m%n
# 文件输出
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=logs/app.log
log4j.appender.file.MaxFileSize=10MB
log4j.appender.file.MaxBackupIndex=5
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}] [%p] %c - %m%n
测试代码
import org.apache.log4j.Logger;
public class Log4jExample {
// private static final Logger logger = Logger.getLogger(Log4jExample.class);
//slf日志
private static final org.slf4j.Logger logger = org.slf4j.LoggerFactory.getLogger(Log4jExample.class);
public static void main(String[] args) {
logger.debug("这是一个 DEBUG 级别的日志");
logger.info("这是一个 INFO 级别的日志");
logger.warn("这是一个 WARN 级别的日志");
logger.error("这是一个 ERROR 级别的日志");
}
}