gpt4 book ai didi

Gradle 类路径包含多个 SLF4J 绑定(bind)

转载 作者:行者123 更新时间:2023-12-03 04:16:31 25 4
gpt4 key购买 nike

我收到编译错误。我不确定哪个依赖项会提供此错误。
我正在使用@slf4j lombok 注释在我的类中实现日志记录。

SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/home/andrius/.gradle/caches/modules-2/files-2.1/org.slf4j/slf4j-log4j12/1.7.25/110cefe2df103412849d72ef7a67e4e91e4266b4/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/home/andrius/.gradle/caches/modules-2/files-2.1/ch.qos.logback/logback-classic/1.2.3/7c4f3c474fb2c041d8028740440937705ebb473a/logback-classic-1.2.3.jar!/org/slf4j/impl/StaticLoggerBinder.class]



我不太确定在哪个模块中以及应该排除什么来避免这种情况。

我在下面设置的 Gradle 依赖项。
dependencies {
implementation('org.springframework.boot:spring-boot-starter') {
exclude group: 'ch.qos.logback'
}
compileOnly('org.projectlombok:lombok:1.18.2')
testCompileOnly('org.projectlombok:lombok:1.18.2')
annotationProcessor('org.projectlombok:lombok:1.18.2')
compile('org.springframework.boot:spring-boot-starter-web')
compile('org.springframework.boot:spring-boot-starter-data-jpa')
compile('net.sf.dozer:dozer:5.4.0')
compile('org.springframework.boot:spring-boot-starter-logging')
compile('io.springfox:springfox-swagger2:2.9.2')
compile('io.springfox:springfox-swagger-ui:2.9.2')
testImplementation('org.springframework.boot:spring-boot-starter-test') {
exclude(module: 'spring-boot-starter-logging')
}
}

最佳答案

有几件事需要检查:

我发现 gradle 的缓存会很粘,所以当我遇到这样的持续性问题时,我喜欢 rm -rf ~/.gradle/caches - 显然在这里要小心,不要消灭超出您的预期。

运行gradle dependencies找出您的日志记录实现的来源。您通常会发现在某个地方会有一个库正在拉入slf4j-log4j12。另一个正在拉入logback-classic .您似乎排除了 ch.qos.logback spring-boot-starter 将其拉入的组,所以我猜您希望排除该实现。因此,您想找出其他地方ch.qos.logback正在被拉入并在那里排除它。

这是一个费力的过程,我觉得 Spring 选择 logback-classic 有点过分自以为是,但目前就是这样。

不是一个完整的答案,但我希望这会有所帮助。

关于Gradle 类路径包含多个 SLF4J 绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55105640/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com