488 Stimmen

Es konnten keine Appenders für logger(log4j) gefunden werden?

Ich habe log4j zu meinem Buildpath hinzugefügt, aber ich erhalte die folgende Meldung, wenn ich meine Anwendung ausführe:

log4j:WARN No appenders could be found for logger (dao.hsqlmanager).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

Was bedeuten diese Warnungen? Was ist der Absender hier?

6voto

Jin Thakur Punkte 2515

Ich denke, Sie sollten verstehen, wo die log4j jar-Datei oder der Java-Code nach den log4j-Konfigurationsdateien sucht.

src/main/resources/log4j.properties ist der Pfad der Sonnenfinsternis. Platzieren Sie sie an einer geeigneten Stelle, damit Sie den absoluten Pfad nicht fest in den Code einfügen müssen.

Lesen Sie dazu meinen Artikel und meine Beispiellösung https://askyourquestions.info/how-to-see-where-the-log-is-logger-in-slf4j/

6voto

a3po2.0 Punkte 251

Ich erhalte denselben Fehler. Hier das Problem, das zu dieser Fehlermeldung führt:

Ich erstelle einige Objekte, die den Logger verwenden, bevor ich log4j konfiguriere:

Logger.getLogger(Lang.class.getName()).debug("Loading language: " + filename);

Lösung: Konfigurieren Sie log4j zu Beginn in der Hauptmethode:

PropertyConfigurator.configure(xmlLog4JConfigFile); 
// or BasicConfigurator.configure(); if you dont have a config file

6voto

fty4 Punkte 516

Fügen Sie den folgenden Code als ersten hinzu:

Properties prop = new Properties();
prop.setProperty("log4j.rootLogger", "WARN");
PropertyConfigurator.configure(prop);

3voto

Antonio Martin Punkte 321

In meinem Fall war der Fehler das Flag " Additivität ". Wenn es für Ihr Root-Projektpaket "false" ist, dann haben die Kindpakete keinen Appender und Sie sehen den " Appender nicht gefunden Fehler".

3voto

ekjcfn3902039 Punkte 1653

Ein weiterer Grund, warum dies (in RCP4) passieren kann, ist, dass Sie mehrere Logging-Frameworks in Ihrer Zieldatei verwenden. Dies tritt zum Beispiel auf, wenn Sie eine Kombination aus slf4j, log4j und ch.qos.logback.slf4j in der Inhalts-Registerkarte Ihrer Zieldatei verwenden.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X