# (Ablauf-) Protokoll - Wie zu realisieren?



## gondor (30. Nov 2004)

hallo liebe java-freunde 

ich habe ein programm. super...

dieses ist eine applikation, welches über eine exe gestartet wird. in meiner entwicklungsumgebung 
setze ich gerne system.out´s, um zu sehen welche funktionen abgearbeitet worden sind oder welcher 
status verschiedene variablen haben.

beim ausführen des programms habe ich diese kontrolle leider nicht mehr. wie macht ihr das?
schreibt man dafür alles in eine datei oder gibt es einen anderen weg? wie kann man eine art
ablaufprotokoll programmieren, so dass mein programm nicht in der performance beeinträchtigt 
wird?

vielen dank für ratschläge, tipps und tricks


----------



## foobar (30. Nov 2004)

> wie kann man eine art
> ablaufprotokoll programmieren, so dass mein programm nicht in der performance beeinträchtigt
> wird?


Für diesen Zweck gibt es Logger z.b.  java.util.Logger oder Log4J.


----------



## gondor (30. Nov 2004)

so, vielen dank für den tipp!

nachdem ich nun mit Log4J arbeite protokolliere ich alles in eine datei. 

klappt ganz gut, jedoch hat sich nun ein anderes problem eingeschlichen:

wenn ich mein programm über concole ausführen möchte mit:


```
java -jar myProgramm.java
```

kommt folgender fehler:


```
E:\JBuilder9\project>java -jar myProgramm.exe

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/log4j/Layout
```

das ausführen über den jBuilder ist aber kein problem.

was nun?


----------



## bygones (30. Nov 2004)

log4j muss mit in dem Pfad mit aufgenommen werden

```
java -cp .;log4j.jar -jar deins.jar
```

oder du nimmst util.Logger - da hast du das extra lib problem net


----------



## gondor (30. Nov 2004)

also ist der klassenpfad nicht gesetzt,...?

bekomme folgende meldung mit deinem vorschlag:


```
E:\JBuilder9\project>java -cp .;log4j-1.2.9.jar -jar myProgramm.jar 

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/log4j/Layout
```

bin ich zu blöd?


----------



## foobar (30. Nov 2004)

```
E:\JBuilder9\project>java -cp .;log4j-1.2.9.jar -jar myProgramm.jar
```
Bei diesem Aufruf muß sich das Archiv log4j-1.2.9.jar im selben Verzeichnis wie das Programm befinden. Ist das der Fall? Wenn nicht mußt du den Pfad dementsprechend ändern.


----------



## gondor (30. Nov 2004)

@foobar

befindet sich im gleichen verzeichnis...

argh, würde jetzt nicht gerne auf das util-paket umsteigen


----------



## gondor (30. Nov 2004)

... hat sich erledigt. habe den pfad doch noch setzen können


----------

