java - starter - 如何設置commons-logging以使用logback?




spring-boot-starter-logging (2)

答案是不使用commons-logging.jar,因為SLF4J被設計用於執行commons-logging所做的更好。 正如@MahdeTo所指,你需要使用jcl-over-slf4j.jar。

查看slf4j網站上有關從commons-logging遷移的文檔。

我們使用slf4j + logback,碰巧有一些使用commons-logging的第三方庫。 如何設置它以使用logback?


我也遇到過這個問題,並且發現jcl-over-slf4j.jar確實可以解決問題,我無法理解為什麼commons-logging不能自動使用logback ,因為commons-logging是日誌接口並且logback是實現,他們應該自動集成,直到我發現:

Apache Commons Logging(JCL)提供了一個Log接口,旨在兼顧輕量級和獨立的其他日誌工具包的抽象。 它為中間件/工具開發人員提供了簡單的日誌記錄抽象,允許用戶(應用程序開發人員)插入特定的日誌記錄實現。

JCL為其他日誌工具提供了精簡包裝日誌實現,包括Log4J,Avalon LogKit(Avalon Framework的日誌記錄基礎結構),JDK 1.4以及用於1.4之前系統的JDK 1.4日誌API(JSR-47)的實現。 該接口與Log4J和LogKit緊密相關。

顯然,並非所有的日誌界面都可以很好地與日誌實現集成,這意味著,如果你真的想使用logbackjcl-over-slf4j.jar現在是你唯一的解決方案,因為JCL只支持Log4J, Logkit, JDK 1.4





apache-commons-logging