Ich versuche zu konfigurieren log4j in einer Eclipse-Plugin-Projekt mit dem folgenden XML-Property-Datei zu finden, die eine benutzerdefinierte appender umfasst genannt EclipseLoggingAppender: Um diese EigenschaftLog4j keine benutzerdefinierten appender eine Eigenschaft Datei mit
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="true">
<appender name="eclipseErrorView" class="com.lior.ibd.utils.logging.EclipseLoggingAppender"/>
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%-5p %c{1} - %m%n"/>
</layout>
</appender>
<root>
<priority value ="debug" />
<appender-ref ref="console" />
</root>
<logger name="com.lior">
<level value ="warn" />
<appender-ref ref="eclipseErrorView" />
</logger>
</log4j:configuration>
gebe ich Datei an die folgende Anweisung im Code:
DOMConfigurator.configure(filename);
Aber beim Laden der Anwendung ich die folgende Fehlermeldung erhalten:
log4j:ERROR Could not create an Appender. Reported error follows.
java.lang.ClassNotFoundException: com.lior.ibd.utils.logging.EclipseLoggingAppender
Wer weiß, was ist das Geschäft? könnte ein Klassenpfadproblem sein? ..
Ich möchte diese Zeilen nicht löschen, da ich möchte, dass dieser Appender im Anwendungsframework läuft ... Was meinst du mit " Hinzufügen von EclipseLoggingAppender zum Klassenpfad "? – Protostome
@Protostome - das hängt von Ihrer Umgebung ab. Laufen Sie Ihren Code von der Befehlszeile oder innerhalb des Anwendungsservers oder irgendwie anders? – krtek
Dies ist eine Eclipse RCP-Anwendung – Protostome