运行Web服务器时,我收到以下信息:
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/C:/Users/Stefan/.m2/repository/org/slf4j/slf4j-log4j12/1.6.4/slf4j-log4j12-1.6.4.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/C:/Users/Stefan/.m2/repository/ch/qos/logback/logback-classic/0.9.30/logback-classic-0.9.30.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
log4j:ERROR A "org.apache.log4j.ConsoleAppender" object is not assignable to a "org.apache.log4j.Appender" variable.
log4j:ERROR The class "org.apache.log4j.Appender" was loaded by
log4j:ERROR [sun.misc.Launcher$AppClassLoader@57bd06bf] whereas object of type
log4j:ERROR "org.apache.log4j.ConsoleAppender" was loaded by [WebAppClassLoader=440633929@1a438a49].
我尝试排除/ch/qos/logback/logback-classic/
依赖项。这是我的pom.xml中的部分:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.6.4</version>
<exclusions>
<exclusion>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
</exclusion>
</exclusions>
</dependency>
我添加了这个,但在Maven更新后,结果仍然相同。我该如何解决这个问题?
答案 0 :(得分:1)
工件slf4j-api
似乎不依赖于ch.qos.logback:logback-classic
。您可以运行mvn dependency:tree
来确定logback-classic
的来源。
答案 1 :(得分:0)
你必须在这里看两件事。 1. SLF依赖。
SLF4J API旨在与一个且仅一个基础日志记录绑定 框架一次。如果课程中存在多个绑定 路径,SLF4J会发出警告,列出那些位置 绑定。
here。这意味着,可能存在依赖于logback-classic的amother jar。所以你必须找到它并排除类路径中所有那些依赖项。