问题描述
使用日志一直都是使用了slf4j-api、slf4j-log4j12、log4j这三个包结合起来使用,新搭建了一个项目,然后创建了一个main方法进行测试运行。然后发现报错了。
Failed to load class org.slf4j.impl.StaticLoggerBinder
解决过程
去SLF4J的官网查询这个错误的原因是什么,得到的结论是:
总的来说,就是缺少slf4j-log4j12.jar这个依赖,但是我的是Maven项目,我很确定我已经加入了这个包,但是为什么还是会出错呢。
后来才发现了问题的所在,我的依赖如下所示:
<dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>${slf4j.log4j.version}</version> <scope>test</scope> </dependency>
因为我把范围设置为test,也就是说只有在测试环境下,才可以使用,而我是在main方法中直接运行,所以不属于测试环境,所以这个包相当于就没有加入依赖。后来修改为:
<dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>${slf4j.log4j.version}</version> <scope>compile</scope> </dependency>
这个错误就没有了。
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/231753.html原文链接:https://javaforall.net
