Ermittelte sowohl log4j-über-slf4j.jar als auch slf4j-log4j12.jar im Klassenpfad mit maven und Spring Boot

8

Ich weiß nicht, wie ich dieses Problem lösen kann. Bitte werfen Sie einen Blick und wenn möglich, lassen Sie mich, wie löse ich es. Hier ist meine pom.xml Datei.

%Vor%

Ich erhalte grundsätzlich den folgenden Fehler:

  

Ermittelte sowohl log4j-über-slf4j.jar als auch slf4j-log4j12.jar im Klassenpfad, wodurch StackOverflowError vorweggenommen wurde.

Siehe auch Ссылка für weitere Details.

    
Pranjut 09.09.2014, 05:26
quelle

2 Antworten

22

Gehen Sie zu Ihrer pom.xml und auf der unteren Registerkarte und klicken Sie auf "Dependency Hierarchy" Registerkarte. Von dort suchen Sie nach log4j-über-slf4j. Schließen Sie alle Instanzen dieser Abhängigkeit aus (klicken Sie mit der rechten Maustaste auf die Instanz und "Maven Artifact ausschließen"). Nachdem Sie nicht mehr log4j-over-slf4j erscheinen und neu gespeichert haben, versuchen Sie das Programm auszuführen. Wenn dies immer noch nicht funktioniert, machen Sie die Änderungen, die Sie gerade vorgenommen haben, rückgängig (möglicherweise sollten Sie Ihre pom.xml am Anfang sichern) und alle Instanzen von slf4j-log4j12 ausschließen.

Ich hatte das gleiche Problem bei der Arbeit mit Apache Storm. . . ein beispiel, warum man arbeiten könnte und nicht der andere ist, wie storm log4j-über-slf4j zur laufzeit zieht, obwohl ich "exclude log4j-over-slf4j" zur storm-core-abhängigkeit hinzugefügt habe

    
Daniel Epstein 19.01.2016 18:40
quelle
-3

Sie können das Problem lösen, indem Sie "sl4j over log4j" in pom.xml

hinzufügen     
user3221553 04.03.2016 09:41
quelle