[JAVA] Bereiten Sie die Protokollausgabe mit log4j in Eclipse vor.

Dieser Artikel beschreibt die Vorbereitungen zum Aktivieren der Protokollausgabe mit dem Paket org.apache.log4j in Eclipse.

  1. Laden Sie zuerst das log4j-Paket (hier log4j-1.2.17.zip) von der folgenden Site herunter. http://www.apache.org/dyn/closer.cgi/logging/log4j/1.2.17/log4j-1.2.17.zip

  2. Entpacken Sie die Datei log4j-1.2.17.zip und fügen Sie die Datei log4j-1.2.17.jar zur externen Bibliothek Ihres Projekts hinzu. Auf dem Eclipse-Bildschirm

Lassen Sie uns testen, ob das Protokoll mit einem einfachen Projekt ausgegeben wird.

package test.project; import org.apache.log4j.Logger;

public class TestClass { public static void main(String[] args) { Logger logger = Logger.getLogger(TestClass.class.getName()); // Protokollausgabe logger.info("This is info."); } }

Wenn ich es ausführe, wird das Protokoll nicht ausgegeben. Der folgende Fehler wird ausgegeben. log4j:WARN No appenders could be found for logger (test.project.TestClass). log4j:WARN Please initialize the log4j system properly. log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info. Bei der Prüfung scheint dieser Fehler ein Fehler zu sein, der mich auffordert, die Protokollausgabeeinstellung festzulegen, da ich sie in test.project.TestClass nicht finden kann. Als Einstellungsmethode gibt es eine Methode zum Festlegen in der Eigenschaftendatei (log4j.properties) und der XML-Datei (log4j.xml). Daher verwenden wir dieses Mal die XML-Datei.

  1. Erstellen Sie eine log4j.xml-Datei. (Erstellt am selben Speicherort wie die Quelldatei) Standardmäßig befinden sich die Teile ~ </ appender> im Netz, sodass sie unverändert abgerufen werden. Der Teil ~ </ category> ist die neu erstellte Definition. *** ist der Paketname, nicht der Klassenname (in diesem Fall "test.project")

< ?xml version="1.0" encoding="UTF-8" ?> < !DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> < log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> < appender name="stdout" class="org.apache.log4j.ConsoleAppender"> < param name="Target" value="System.out" /> < layout class="org.apache.log4j.PatternLayout"> < param name="ConversionPattern" value="%d{yyyy/MM/dd HH: mm:ss SSS} %5p %5t %c{1} - %m%n" /> < /layout> < /appender>

< category name="test.project" > < appender-ref ref="stdout" /> < /category>

< /log4j:configuration >

Ich werde es noch einmal versuchen. Das wird wieder herauskommen. log4j:WARN No appenders could be found for logger (test.project.TestClass). log4j:WARN Please initialize the log4j system properly. log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info. Warum ist es immer noch ein Fehler? Nachdem ich verschiedene Dinge untersucht habe, kann ich es anscheinend nicht sehen, da sich log4j.xml an einer Stelle befindet, an der der Klassenpfad nicht übergeben wird.

public class TestClass { public static void main(String[] args) { Logger logger = Logger.getLogger(TestClass.class.getName()); // hinzufügen und bestätigen URL fileXmlUrl = Loader.getResource("log4j.xml"); DOMConfigurator.configure (fileXmlUrl); // <-fileXmlUrl ist null // hinzufügen und bestätigen // Protokollausgabe logger.info("This is info."); } }

  1. Legen Sie den Klassenpfad auf den Speicherort der Datei log4j.xml fest.

Wenn Sie nun die oben ausgeführte Quelle ausführen, erhalten Sie einen Wert anstelle einer Null. Wenn Sie das hinzugefügte Teil löschen und verschieben, funktioniert es diesmal ordnungsgemäß.

2017/XX/XX 14:56:09 781 INFO main TestClass - This is info.

Recommended Posts

Bereiten Sie die Protokollausgabe mit log4j in Eclipse vor.
Aktivieren Sie die Protokollausgabe sowohl für Dateien als auch für die Konsole mit log4j in Eclipse.
[Für Anfänger] Ich habe versucht, DBUnit mit Eclipse zu verwenden
[Für Anfänger] Ich habe versucht, JUnit 5 mit Eclipse zu verwenden
Verwenden Sie Amateurs UML mit Eclipse
Protokollausgabe im Json-Format mit lograge / lograge-sql mit RubyOnRails
Protokollausgabe in Datei in Java
Spring Boot-Protokoll im JSON-Format ausgeben
Ermöglichen Sie die Code-Vervollständigung in Eclipse für Mac
[Für Anfänger] So debuggen Sie mit Eclipse
Eclipse Pleiades All in One für Mac
ChatWork4j für die Verwendung der ChatWork-API in Java
Farbcodierung der Konsolenausgabe in Eclipse
Techniken zum Lesen von Java-Quellcode in Eclipse
[Java] API-Erstellung mit Jerjey (Jax-rs) mit Eclipse
Anforderungs- und Antwortprotokolle mit Spring Boot ausgeben
[Hinweis] Struts2-Umgebungskonstruktion mit Gradle in Eclipse
Ermöglichen Sie die Entwicklung in einer Eclipse-Umgebung mit dem iPLAss SDK
Die Tomcat 8.5-Protokollausgabe wurde durch Log4j2.8 oder höher ersetzt
Vergleichen Sie die PDF-Ausgabe in Java für Snapshot-Tests
Tipps zum Generieren von Dateien für Eclipse-Projekte mit Gradle
MVC in Eclipse.
Versuchen Sie es mit Log4j 2.0
Ich habe versucht, die erweiterte for-Anweisung in Java zu verwenden
Beispielcode für die Protokollausgabe von Java + SLF4J + Logback