SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder"

項目啓動的時候,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.

意思是不能加載類org.slf4j.impl.StaticLoggerBinder,SLF4J默認使用NOP日誌實現,請到http://www.slf4j.org/codes.html#StaticLoggerBinder查看詳情。

官方文檔給出如下解釋:

出現該錯誤的原因是org.slf4j.impl.StaticLoggerBinder無法加載到內存中,當項目classpath找不到適合的SLF4J Binding時會出現該錯誤提示。
如果不想出現以上提示,只要把slf4j-nop.jar、slf4j-simple.jar、slf4j-log4j12.jar、slf4j-jdk14.jar、logback-classic.jar其中一個jar包放到項目classpath中即可。

從SLF4J 1.6開始,如果找不到SLF4J Binding,默認使用NOP日誌實現(slf4j-nop.jar)。

綜上所述,如果使用slf4j + log4j,除了添加log4j自身的jar包外,還要添加slf4j-log4j12.jar。如果使用slf4j + logback,只要添加logback-classic.jar即可。

slf4j + logback配置

<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.12</version>
</dependency>
<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-classic</artifactId>
    <version>1.1.3</version>
</dependency>


slf4j + logback配置

<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-core</artifactId>
    <version>2.4</version>
</dependency>
<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-slf4j-impl</artifactId>
    <version>2.4</version>
</dependency>
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.12</version>
</dependency>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章