2015-09-28 10:02:21,890 ERROR [STDERR] (HDScanner) SLF4J: slf4j-api 1.6.x (or later) is incompatible with this binding.
2015-09-28 10:02:21,891 ERROR [STDERR] (HDScanner) SLF4J: Your binding is version 1.5.5 or earlier.
2015-09-28 10:02:21,891 ERROR [STDERR] (HDScanner) SLF4J: Upgrade your binding to version 1.6.x.
2015-09-28 10:02:21,891 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/metasolv-web]] (HDScanner) Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
java.lang.NoSuchMethodError: org.slf4j.impl.StaticLoggerBinder.getSingleton()Lorg/slf4j/impl/StaticLoggerBinder;
Wie behebe ich diesen Fehler? Außerdem verwende ich slf4j in meiner Anwendung nirgendwo, nur die Dozer-Bibliothek verwendet es. aus dem folgenden Stacktrace sehe ich, dass die Feder Anwendung der Slf4j verwendet, aber warum lädt es nicht eine selbst?SLF4J: slf4j-api 1.6.x (oder höher) ist nicht kompatibel mit dieser Bindung
java.lang.NoSuchMethodError: org.slf4j.impl.StaticLoggerBinder.getSingleton()Lorg/slf4j/impl/StaticLoggerBinder;
at org.slf4j.LoggerFactory.bind(LoggerFactory.java:128)
at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:107)
at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:295)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:269)
at org.apache.commons.logging.impl.SLF4JLogFactory.getInstance(SLF4JLogFactory.java:156)
at org.apache.commons.logging.impl.SLF4JLogFactory.getInstance(SLF4JLogFactory.java:132)
at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:645)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:191)
Es hilft, wenn Sie wissen, dass slf4j zwei Schichten hat. Der erste ist der Kern. Die zweite ist die Bindungen. Es klingt wie der Kern ist Version 1.6 oder höher, während die Bindung in der Version 1.5.5 oder niedriger ist. – Powerlord
Wenn sich die Dateien slf4j in Ihrem 'WEB-INF/lib'-Verzeichnis befinden, können Sie das Slf4j-Binding-Jar für eine neuere Version austauschen. Wenn Sie Maven/Gradle verwenden, können Sie alternativ eine neuere Version der Bindung angeben. – Powerlord
@Powerlord Wie identifiziere ich die Bindungsbibliothek? Ich sehe 'jcl-über-slf4j' und' slf4j-api' in den Abhängigkeiten. Ich verstehe, dass der zweite der Kern ist. – Zeus