從源碼來理解slf4j的綁定,以及logback對配置文件的加載

1)https://www.cnblogs.com/youzhibing/p/6849843.htmlhtml

 

編譯期間,完成slf4j的綁定已經logback配置文件的加載。slf4j會在classpath中尋找org/slf4j/impl/StaticLoggerBinder.class(會在具體的日誌框架如log4j、logback等中存在),找到並完成綁定;同時,logback也會在classpath中尋找配置文件,先找logback.configurationFile、沒有則找logback.groovy,若logback.groovy也沒有,則找logback-test.xml,若logback-test.xml仍是沒有,則找logback.xml,若連logback.xml也沒有,那麼說明沒有配置logback的配置文件,那麼logback則會啓用默認的配置(日誌信息只會打印在控制檯)。api

  slf4j只能綁定某一個特定的日誌框架,若沒有綁定,則會有以下警告,說明沒有找到合適的日誌框架框架

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". SLF4J: Defaulting to no-operation (NOP) logger implementation SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.

  若找到多個日誌框架,slf4j會發出警告,並在運行時拋出NoClassDefFoundError異常spa

 

 

 

 

2)https://blog.csdn.net/zhuyucheng123/article/details/51803852.net

 

 

api:日誌

  • commons-logging
  • log4j1
  • jdk-logging
  • slf4j

impl:code

  • log4j1
  • log4j2
  • jdk-logging
  • logback

文章中有大量實例xml

 

 

3)演化:htm

https://zhuanlan.zhihu.com/p/24272450blog

 

 

4)https://blog.csdn.net/u011372108/article/details/83824274

這個連接解決了slf4j-log4j12與logback的衝突

相關文章
相關標籤/搜索