我正在使用JBoss 6,并且在尝试运行我的应用程序时出现多个版本错误:
错误[STDERR] SLF4J:类路径包含多个SLF4J绑定。
ERROR [STDERR] SLF4J:发现绑定 [VFS:/ C:/jboss-6.0.0.Final/common/lib/slf4j-jboss-logmanager.jar/org/slf4j/impl/StaticLoggerBinder.class]
ERROR [STDERR] SLF4J:发现绑定 [VFS:/ C:/jboss-6.0.0.Final/server/default/deploy/newsroom-integration-persistence-service.war/WEB-INF/lib/slf4j-log4j12-1.6.1.jar/org/slf4j /impl/StaticLoggerBinder.class]
我的应用程序在pom中声明了slf4j-log4j12,但没有在slf4j-jboss-logmanager中声明,所以不知道为什么要尝试使用它。这是pom:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>${org.slf4j-version}</version>
<scope>runtime</scope>
</dependency>
有关如何解决此问题的任何想法?即使jboss-logging.xml中设置的level-name设置为INFO,它似乎也会导致'DEBUG'级错误被写入控制台!!
答案 0 :(得分:2)
你在pom.xml
声明什么并不重要,JBoss会加载它的公共类路径中的内容。如果您更喜欢使用log4j
绑定,则必须删除C:/jboss-6.0.0.Final/common/lib/slf4j-jboss-logmanager.jar
。这是Alfresco建议的方法。引用:
您可能会在启动过程中看到以下错误:
2011-10-12 10:47:21,505错误[STDERR](主要)SLF4J:类路径包含多个SLF4J绑定。
2011-10-12 10:47:21,505 ERROR [STDERR](主要)SLF4J:在[vfszip:/ usr / local / jeap51 / jboss-中找到绑定 如/普通/ LIB / SLF4J-的JBoss-logging.jar /组织/ SLF4J / IMPL / StaticLoggerBinder.class]
2011-10-12 10:47:21,505 ERROR [STDERR](主要)SLF4J:在[vfszip:/ usr / local / jeap51 / jboss中找到绑定 -as / server / W51J51I1 / deploy / alfresco.war / WEB-INF / lib / slf4j-log4j12-1.5.11.jar / org / slf4j / impl / StaticLoggerBinder.class]
2011-10-12 10:47:21,505错误[STDERR](主要)SLF4J:有关解释,请参阅http://www.slf4j.org/codes.html#multiple_bindings。
要避免这些错误,请删除/common/lib/slf4j-jboss-logging.jar文件。