我正在編寫一個Java應用程序,它將使用SLF4J來處理使用JUL(Java Utils Logging)的運行時綁定進行日誌記錄。因此我的類路徑將有slf4j-api-1.6.4.jar
以及slf4j-jdk14-1.6.4.jar
。SLF4J橋接所需的配置文件
JUL可以通過logging.properties
配置,所以我也需要在我的類路徑中。
爲了確保所有的第三方的依賴登錄到同一JUL的配置,我就準備把下面所有的橋樑我的類路徑中:
jcl-over-slf4j-1.6.4.jar
log4j-over-slf4j-1.6.4.jar
JCL通過commons-logging.properties
進行配置,Log4J通過log4j.properties
進行配置。
我的問題:我是否需要在我的類路徑中放置commons-logging.properties
和log4j.properties
,或者因爲SLF4J網橋,這是不必要的?
我90%確定我不需要,但需要在這裏進行理智檢查!我的理論是,這些橋接器將存根替換爲正常的JCL/Log4J類,只是盲目地調用SLF4J API調用。
這些SLF4J API調用反過來像我的代碼一樣,使用它們在運行時綁定的任何實現。由於在我的情況下綁定是JUL,只需要一個logging.properties
文件。
但我不是伐木專家,我寧願安全也不抱歉。所以我需要這些額外的配置文件,如果是這樣,請解釋爲什麼我可以更好地瞭解SLF4J的工作原理!提前致謝!
我看到第一次有人提到執法插件。對於非常大的項目和維護單個日誌記錄實施來說,這是必須的。 – alan7678 2016-01-28 17:34:15