[Java] Startprobleme mit log4j

yourhighness

Lt. Junior Grade
Registriert
Feb. 2006
Beiträge
297
hallo!

ich versuche grad ein wenig logging in meine programme einzubauen und habe mir dazu mal log4j von der apache seite geladen, das zip archiv in ein verzeichnis entpackt (C:\Programme\Java\apache-log4j-1.2.15) entpackt und anschließend mit set CLASSPATH=%CLASSPATH%;C:\Programme\Java\apache-log4j-1.2.15\log4j-1.2.15.jar das ganze zum classpath hinzugefügt. soweit so gut..

starte ich jedoch dann eclipse und will das erste bsp programm ausführen, findet er die ganzen imports nicht und unterstreicht sie rot..

Code:
import org.apache.log4j.Logger;
    import org.apache.log4j.BasicConfigurator;
    
    public class Hello {
    
      private static final Logger logger = Logger.getLogger(Hello.class);
    
      public static void main(String argv[]) {
    	BasicConfigurator.configure();
    	logger.debug("Hello world.");
    	logger.info("What a beatiful day.");
      }
    }

weiß jemand woran das liegen könnte?
 
hat sich schon erledigt (hab einfach die jar datei manuel in eclipse hinzugefügt)

kann geclosed werden.
 
Tipp:

Verwende log4j nicht direkt. Verwende slf4j als interface. (nur 2 neue jars werden gebraucht, keine weiter configuration)
Log4j wird nicht mehr (richtig) weiterentwickelt. Das nächste wird wohl Logback sein, das Log4j verdrängt.

Wenn du slf4j verwendest, muss du beim umstiege nichts am Code verändern. Nur Jar's austauschen. Und slf4j hat ein paar Performance vorteile gegenüber direkt log4j verwendung.

http://www.slf4j.org/
http://logback.qos.ch/
 
Darf ich mal fragen, wo du die Info her hast, daß Log4j nicht mehr (richtig) weiterentwickelt wird?
 
Ich denke Log4j ist am "Ende" angekommen. Es funktioniert, ist stabil, aber es gibt wohl bessere Ansätze:

Direkt von der Logback Homepage.
Logback Project

Logback is intended as a successor to the popular log4j project. It was designed by Ceki Gülcü, the founder of log4j. It builds upon experience gained in building industrial-strength logging systems going back as far as 1999.

Logback's basic architecture is sufficiently generic so as to apply under different circumstances. At present time, logback is divided into three modules, logback-core, logback-classic and logback-access.

The logback-core module lays the groundwork for the other two modules. The logback-classic module can be assimilated to a significantly improved version of log4j. Moreover, logback-classic natively implements the SLF4J API so that you can readily switch back and forth between logback and other logging systems such as log4j or JDK14 Logging.

The logback-access module integrates with Servlet containers, such as Tomcat and Jetty, to provide HTTP-access log functionality. Note that you can easily build your own modules on top of the Core module.

Vom Gründer von log4j designed und als "wesentlich verbesserte Version von log4j" angepriesen, könnte man davon ausgehen, dass log4j nicht mehr so weiterentwickelt wird, wie es zu erwarten sein könnte.

Aber meine Firma und ich privat, setzten immer noch auf Log4j. Steigen aber von Apache Commons Logging auf SLF4J um, damit wir einerseits beim möglichen Umstieg nicht viel machen müssen und da SLF5J ein paar nette Features hat.

Logback's Konfiguration hat sehr stark Ähnlichkeit mit der von Log4j.

Gruß
Nox
 
Ich frag' nur, weil ich auf der log4j-Seite bei apache.org keine Neuigkeiten gefunden habe, die daraufhinweisen, daß log4j eingestellt würde.
Abgesehen davon glaube ich nicht, daß log4j am Ende ist. Dazu sind im Logging-Projekt von Apache zuviele Portierungen für andere Sprachen unterwegs, als daß das Apache-Team für Java eine Ausnahme machen würde.
 
Wir werden sehen. Ich will mir nur alles offen lassen, falls log4j durch logback "ersetzt" wird.

Glaube das ist ähnlich wie mit CVS zu SVN. Beide wird noch genutzt aber bei die Community entscheidet irgendwann, was besser ist ...
 

Ähnliche Themen

Zurück
Oben