我们在使用Spring的日志框架的时候,常常会使用 logback
。
而使用spring-boot-starter
这个依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
因为它包含了spring-boot-starter-logging
,里面包含了logback
,所以我们不用添加额外的日志框架依赖。但是我把我的logback
依赖移除的时候缺发生了下面报错。
(SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder“.)
如果你没有使用spring-boot-starter-logging
,那么这个错误是很常见的,添加logback
的日志框架就可以了。但是我是添加了spring-boot-starter-logging
依赖的。
经过长时间的排查,我终于找到了问题。
<properties>
<logback.version>1.3.0-alpha15</logback.version>
<java.version>18</java.version>
</properties>
我们pom文件里添加了logback
版本的properties。这个版本应该与spring-boot-starter
起了冲突。所以移除之后就好了。
所以当你遇到这个问题,不妨看看pom文件的 标签里有没有<logback.version>指定了logback的版本,与spring-boot-starter-logging不一致。有的话删除就好了。