SLF4J Verbindliche Fehler
Im bin neu in maven und die letzten zwei Tage, ich versuche zur Integration von maven in ein kleines web-Projekt.
(Ich benutze Eclipse Juno als IDE).
Zuerst habe ich erzeugt ein neues Projekt (Struktur) mit dem "mvn-archetype-webapp" - Befehl und kopiert die Quellen von der Projekt-in dieser Struktur.
Dann habe ich alle Abhängigkeiten auf die pom.xml so konnte ich kompilieren und starten Sie das Projekt mit dem tomcat7-plugin.
So weit funktioniert alles einwandfrei, außer die SLF4J-Fehlermeldungen beim start jedes maven-Befehl:
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation SLF4J:
See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Meine pom.xml Abhängigkeiten, die wie folgt aussieht:
<!-- properties -->
<properties>
<spring.version>3.1.1.RELEASE</spring.version>
</properties>
<!-- dependencies -->
<dependencies>
<!-- logging -->
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.0.6</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.6.6</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>1.6.6</version>
<scope>runtime</scope>
</dependency>
<!-- junit -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<!-- Spring 3 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.version}</version>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- jee -->
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-web-api</artifactId>
<version>6.0</version>
<scope>provided</scope>
</dependency>
<!-- tiles -->
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-core</artifactId>
<version>2.2.2</version>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-api</artifactId>
<version>2.2.2</version>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-jsp</artifactId>
<version>2.2.2</version>
</dependency>
<!-- jstl -->
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
</dependencies>
Kann mir jemand helfen mit diesem Problem?
- möglich, Duplikat der SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". Fehler
Du musst angemeldet sein, um einen Kommentar abzugeben.
Eclipse Juno und Indigo, wenn die Verwendung der gebündelten maven-version(m2e), sind nicht durch das unterdrücken der Nachricht SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". Dieses Verhalten ist aus der m2e-version 1.1.0.20120530-0009 ab.
Obwohl, wird dies als Fehler in Ihren Protokollen gespeichert normalerweise. Die hervorgehobenen Fehler noch vorhanden sein, bis es einen fix für diesen Fehler. Mehr dazu in der m2e-support-Website.
Die aktuelle Lösung ist die Verwendung einer externen maven-version eher als die gebündelte version von Eclipse. Finden Sie über diese Lösung und weitere details zu diesem Fehler in der Frage, unter welchen ist genau das gleiche problem, das Sie konfrontiert sind.
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". Fehler
Kommt dieser Fehler von eclipse ausführen von maven, nicht von Ihrem Projekt, so es sollte keinen Einfluss auf Ihre build-Prozess oder die resultierenden Dateien.
Ich nehme an, dies ist ein problem im Zusammenhang mit maven-Verwendung von nicht slf4j oder einem anderen logging-tool, aber eclipse oder maven-plugin versucht.
Der einfachste Weg, um loszuwerden, der Fehler ist die Verwendung eines externen maven statt der runtime in eclipse können Sie dies im Einstellungen -> Maven -> Installationen.
Ich bin mit dem gleichen Problem: ich habe kopiert, mein POM auf ein leeres Projekt, und schnitzte es nach unten fast nichts (siehe unten) - und bin immer noch zu sehen der Fehler. Ich kann bestätigen, dass es nicht gehen Weg von hinzufügen von SLF4J-Bindungen (logback, etc), um die POM-die Nachricht ist offenbar aus Maven selbst, nicht das software-Projekt wird kompiliert und die tests. (Ich bin jetzt immer aus einem völlig leeren Projekt.)
Das beste, was ich herausfinden kann ist, dass ich denke, es hat etwas zu tun mit Eclipse: wenn ich Maven manuell von der Befehlszeile aus, wird der Fehler nicht angezeigt-nur beim Aufruf unter Eclipse. (Ich bin mit dem Eclipse-Helios-Release 2 auf MacOSX, nur zur info, damit wir wissen, das problem beschränkt sich nicht nur auf Ihre version, Juno.)
FYI, in Reaktion auf Ceki ' s Vorschlag, hier die Ergebnisse von maven die Abhängigkeit Baum Ziel:
Nicht allzu informativ, aber es ist so.
Die Abhängigkeit Erklärungen gut Aussehen. Logback und slf4j werden Versand in Ihrem web-app. Ich vermute aber, dass slf4j-api.jar irgendwie ist enthalten in Tomcat (aber nicht logback).
BTW, die Der
mvn dependency:tree
Befehl ist dein Freund. Was bedeutet es zu sagen?Versuchen Sie, die Abhängigkeit für logback-core.
Den tomcat7-plugin hat die SLF4J-Abhängigkeit. Ich hatte das gleiche problem, bis ich zugewiesen die Abhängigkeit direkt zu den tomcat7-plugin.
Können Sie fügen Sie diese an Ihre pom-Eigenschaften.