亲宝软件园·资讯

展开

出现SLF4J错误

码农研究僧 人气:0

1. 问题所示

编译ssm的项目的时候出现了这个错误

导致一直运行不起来

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.
Logging initialized using 'class org.apache.ibatis.logging.stdout.StdOutImpl' adapter.

截图如下所示:

或者出现如下问题:(问题大致差不多性质)

2. 原理分析

通过查看官网

主要的原因截图如下:

翻译过来的意思大致如下:

日志含义加载org.slf4j.impl.StaticLoggerBinder类失败
当运行“org.slf4j.impl.”命令时,上报此警告消息。 无法将StaticLoggerBinder类装入内存。 当在类路径上找不到合适的SLF4J绑定时,就会发生这种情况。 将slf4j-nop.jar slf4j-simple.jar、slf4j-log4j12.jar、slf4j-jdk14.jar或logback-classic.jar中的一个(且只有一个)放到类路径上应该可以解决这个问题。
请注意,slf4j-api版本是2.0。 x和以后使用ServiceLoader机制。 后端,如logback 1.3和更高版本,目标是slf4j-api 2。 不要与org.slf4j.impl.StaticLoggerBinder一起发布。 如果您设置了一个日志后端,目标是slf4j-api 2.0。 X,您需要在类路径上安装slf4j-api-2.x.jar。 参见相关faq条目。

错误原因是少了slf4j-nop.jar slf4j-simple.jar, slf4j-log4j12.jar,slf4j-jdk14.jar或 logback-classic.jar中的其中一个jar包,加上去就行(只能是一个,多了就会有冲突)。

3. 解决方法

通过错误日志以及官方解释
缺少依赖包就加入依赖包即可

在pom.xml配置文件中加入这个依赖包

<dependency>
  <groupId>org.slf4j</groupId>
  <artifactId>slf4j-simple</artifactId>
  <version>1.7.25</version>
  <scope>compile</scope>
</dependency>

其他的依赖包记得删除(把这个删除)
一定要删除,不然还是会出错,之后重新编译生成jar包之后就可

在这里插入图片描述

添加完配置后看看是否有jar包,而且上面的jar包中确保只有一个

而且scope要改为compile则表示编译的时候就会加载此jar包,那么最后就运行成功了
配置这些依赖包的时候一定要确保target上有这些包,可以通过maven clean 以及编译打包完成

最后就可以成功启动了

加载全部内容

相关教程
猜你喜欢
用户评论