slf4j (simple log facade for java)與 JCL(Jakarta-commons-logging),是日志框架的接口定義層
log4j,log4j2與logback是日志接口實現層。
logback比log4j性能更優,直接實現了slf4j。
橋接層:log4j沒有直接實現slf4j, 因此需要適配層 slf4j-log4j12 來適配實現 slf4j接口。
log4j2沒有直接實現slf4j,因此需要適配層 log4j-slf4j-impl 來適配實現 slf4j接口。
記錄一次日志無法輸出的問題:感謝博主的文章:
https://www.cnblogs.com/zeng1994/p/df2559e6dc66c99065676e0ee70545eb.html
問題原因是 橋接層的綁定問題:
slf4j 找到了多個橋接綁定依賴{slf4j-log4j12, log4j-slf4j-impl },項目采用了Log4j2,那么此時由於JVM隨機綁定到slf4j-log4j12,會導致日志無法輸出。解決方案,即 排除slf4j-log4j12即可。
