原始依赖版本,这个是log4j2与slf4j的打印日志黄金组合。
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.36</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
<version>2.20.0</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.20.0</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.20.0</version>
</dependency>
本来日志打印的好好的,但是slf4j-api 1.7.36马上要过期了。需要升级到slf4j-api 2.0.7最新版本。
但是如果只升级slf4j-api到2.0版本,将会无法打印日志。
因为slf4j-api 2.0之后,绑定方式将不是static bind,而是 spi ,需要Provider。机制不一样,所以桥接器org.apache.logging.log4j:log4j-slf4j-impl也需要更换了,
更换为:org.apache.logging.log4j:log4j-slf4j2-impl。
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>2.0.7</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j2-impl</artifactId>
<version>2.24.1</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.24.1</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.24.1</version>
</dependency>
参考文献:
slf4j :SLF4J FAQ