java.lang.NoSuchMethodError: org.apache.log4j.Logger
Verwenden wir ivy zum verwalten einer multi-Projekt-java-Anwendung, und vor kurzem dieser Fehler begann, zeigt sich, wenn wir tun baut. Was ist die Ursache?
InformationsquelleAutor Brad Parks | 2014-05-06
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies konnte behoben werden, indem Sie die folgende Zeile an das Ende der Abhängigkeiten Abschnitt in ivy.xml:
Warum war es ein Problem?
ivy.xml
InformationsquelleAutor Brad Parks
Sieht es aus wie Sie die log4j-bridge implementiert nicht die vollständige Schnittstelle für log4j . Wenn Sie noch mit direkten log4j-Anrufe, müssen Sie sowohl die slf4j-bridge-Glas und das log4j-jar
In Ihrem Fall sieht es aus wie Sie ausgeschlossen die Brücke jar, also alle slf4j Anrufe direkt an log4j statt der Brücke.
Wenn Ihr code ruft log4j durch die xml-Datei , funktioniert dies. Allerdings, wenn Ihr code programmatisch ruft log4j-Initialisierung diese Brücke ist nicht zur Arbeit gehen
InformationsquelleAutor Biswajit_86
Ich weiß, das ist eine sehr alte Frage, aber ich wollte zu teilen, was Prima funktioniert für mich. Wenn Sie verschiedene Artefakte von slf4j-log4j* für zwei Projekte, die wechselseitig voneinander abhängig, zum Beispiel spring data jpa und spring MVC, dies geschieht. Halten Sie es im Einklang oder noch besser eine parent pom. In meinem Fall hatte ich slf4j-log4j12 auf meine spring data jpa Projekt und slf4j-log4j13 auf meine spring MVC.
InformationsquelleAutor Dejazmach
Kommentar diese Abhängigkeit von der
pom.xml
Und fügen Sie (oder halten) die folgende:
Wo sehen Sie einen compile-Zeit-Fehler bezüglich der Log4j, fügen Sie die folgenden import:
InformationsquelleAutor jata shukla