在项目中,想要使用 log4j2
而移除了默认的 logback
日志系统,但是在 IDEA 上无论如何执行,都显示下面的错误。然后日志信息就停止了。
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
配置如下:
build.gradle
:
configurations {
all {
/// 在所有项目中移除 默认的 logging
exclude group: 'org.springframework.boot', module: 'spring-boot-starter-logging'
exclude module: 'logback-classic'
exclude module: "logback-core"
}
}
dependencies {
implementation "org.springframework.boot:spring-boot-starter-log4j2:${version_spring}"
implementation "org.springframework.boot:spring-boot-starter-data-jpa:${gradle.ext.version_spring}"
implementation "org.springframework.boot:spring-boot-starter-security:${gradle.ext.version_spring}"
implementation "org.springframework.boot:spring-boot-starter-web:${gradle.ext.version_spring}"
implementation "org.springframework.boot:spring-boot-starter-websocket:${gradle.ext.version_spring}"
runtimeOnly 'org.postgresql:postgresql:42.2.24.jre7'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
testImplementation 'org.springframework.security:spring-security-test'
}
settings.gradle
:
gradle.ext.version_spring="2.5.5"
解决方法:
这是在命令行中执行了 gradle clean build && gradle bootRun
命令后,没有出现该错误。
猜测原因是因为 IDEA
的缓存依赖等问题。重新手动更新一下就好了。