SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/C:/Users/user/.gradle/caches/6.9.1/generated-gradle-jars/gradle-api-6.9.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/C:/Users/user.gradle/caches/modules-2/files-2.1/ch.qos.logback/logback-classic/1.2.6/b09efa852337fa0dd9859614389eec58dc287116/logback-classic-1.2.6.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.gradle.internal.logging.slf4j.OutputEventListenerBackedLoggerContext]
Exception in thread "main" java.lang.IllegalArgumentException: LoggerFactory is not a Logback LoggerContext but Logback is on the classpath. Either remove Logback or the competing implementation (class org.gradle.internal.logging.slf4j.OutputEventListenerBackedLoggerContext loaded from file:/C:/Users/user/.gradle/caches/6.9.1/generated-gradle-jars/gradle-api-6.9.1.jar). If you are using WebLogic you will need to add 'org.slf4j' to prefer-application-packages in WEB-INF/weblogic.xml: org.gradle.internal.logging.slf4j.OutputEventListenerBackedLoggerContext
at org.springframework.util.Assert.instanceCheckFailed(Assert.java:702)
at org.springframework.util.Assert.isInstanceOf(Assert.java:621)
at org.springframework.boot.logging.logback.LogbackLoggingSystem.getLoggerContext(LogbackLoggingSystem.java:294)
at org.springframework.boot.logging.logback.LogbackLoggingSystem.beforeInitialize(LogbackLoggingSystem.java:118)
at org.springframework.boot.context.logging.LoggingApplicationListener.onApplicationStartingEvent(LoggingApplicationListener.java:232)
at org.springframework.boot.context.logging.LoggingApplicationListener.onApplicationEvent(LoggingApplicationListener.java:213)
at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:176)
at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:169)
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:143)
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:131)
at org.springframework.boot.context.event.EventPublishingRunListener.starting(EventPublishingRunListener.java:76)
at org.springframework.boot.SpringApplicationRunListeners.lambda$starting$0(SpringApplicationRunListeners.java:53)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1541)
at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:117)
at org.springframework.boot.SpringApplicationRunListeners.starting(SpringApplicationRunListeners.java:53)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:329)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1343)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1332)
at com.altruist.accounts.Application.main(Application.java:12)
build.gradle.kts
val lombokVersion: String by project
val mapstructVersion: String by project
plugins {
id("org.springframework.boot")
}
tasks {
bootJar {
archiveFileName.set(project.name + ".jar")
mainClass.set("com.package.Application")
}
}
publishing {
publications {
create<MavenPublication>("bootJava") {
artifact(tasks.getByName("bootJar"))
}
}
}
springBoot {
buildInfo()
}
dependencies {
implementation(project(":api-layer"))
implementation("com.package:integration-app-api:1.0.0-SNAPSHOT")
implementation("org.springframework.boot:spring-boot-starter-data-jpa:2.5.5")
implementation("org.mapstruct:mapstruct:1.4.2.Final")
implementation("com.h2database:h2:1.4.200")
implementation("ch.qos.logback:logback-classic:1.2.6")
implementation("org.springframework.boot:spring-boot-starter-actuator:2.5.5")
implementation("org.springframework.cloud:spring-cloud-starter-openfeign:3.0.5")
compileOnly("org.mapstruct:mapstruct-processor:$mapstructVersion")
annotationProcessor("org.mapstruct:mapstruct-processor:$mapstructVersion")
testImplementation("org.springframework.boot:spring-boot-starter-test:2.5.5")
}
description = "api-layer-service"
请分享你的想法。
您可以分级依赖项
并使用slf4j检查哪个依赖项,并使用
exclude命令类似于exclude(group=“org.slf4j”,module=“slf4j-log4j12”
configurations.all {
exclude(group="org.slf4j", module="slf4j-log4j12"
}
在一个使用log4j和slf4j的应用程序中,我尝试使用依赖于log4j2的elasticsearch jar。 应用程序的日志依赖项如下所示- 应用程序使用自己的<code>log4j。xml并具有一些log4j的自定义附加器,因此如果不重写附加器,则无法将其迁移到log4j2。 根据elasticsearch文档中的建议,添加了以下依赖项,以使用不同于log4j2的记录器。 但是现在在启动应用
我在具有以下logback.xml文件的类路径中有slf4j和logback jar(该文件以前已经成功使用过)。但是,DOCX4J3.0仍然将日志记录信息打印到标准输出。我正在使用NetBeans7.4构建基于docx4j的应用程序。我想将日志级别更改为错误,并将其发送到日志文件中。不知道我错过了什么。任何帮助都是非常感谢的。
我已经在spring boot Application.properties中配置了日志路径属性。 在application.properties中的此属性中。它使用日志文件名,并在tomcat日志文件目录中创建一个新的日志文件。我检查了我的系统属性,它设置了LOG_FILE和LOG_PATH属性。我使用了1.3.6版本的spring Boot。任何与此相关的已知问题。我读过一期,似乎很久以前就修
我想用SpringBoot1.5配置log4j。10.释放。我排除了,并添加了log4j依赖项。在spring启动之前,我有所有日志,但在spring启动之后,init日志停止。 控制台日志: 和log4j2。xml文件: 你知道我做错了什么吗?
在传统的weblogic容器中部署spring boot web应用程序时,我遇到了一些与日志相关的异常。同一个应用程序在嵌入式tomcat上运行良好,无需对其进行任何更改。 对于weblogic 12 c,我看到了一个例外: ulticaster.java:98Aorg.springframework.boot.context.event.InstanceOf(Aistener.publish)
我有以下情况:一个使用日志的Spring启动应用程序,以及已经在应用程序中配置的几个日志记录属性 我想添加其他只能通过文件可用的配置选项,但是一旦我将此文件添加到类路径(无论它被命名为还是),它就会覆盖中的所有内容,并且所有日志记录级别/模式以及那里定义的其他选项都不再有效 - 似乎在添加的所有选项 被忽略,我需要在xml文件中重新添加它们而不是yml。 我的问题是:是否可以合并这两个配置?我的意