[log4j]Slf4j的包冲突

时间:2023-03-08 22:38:47

Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.apache.log4j.Log4jLoggerFactory

究其原因是如果log4j-over-slf4j.jar 和 slf4j-log4j12.jar 在同一个classpath下就会出现这个错误。
其中log4j-over-slf4j.jar的作用是通过Log4j进行logback slf4j共存时bridge的作用。
slf4j-log4j12.jar用途在于slf4j通过slf4j-log4j12调度log4j

去除slf4j-log4j12.jar就可以了。感觉log4j功能确实强大,但facade模式的应用造成logback slf4j有许多纠结