Dabei seit: 15.01.2006 Ort: - Alter: - Geschlecht: -
Verfasst Do 09.02.2006 20:35 Titel
Jar Datei ausführen
Möchte gern eine ausführbare Jar Datei erstellen. Mein Programm besteht aus einer Klasse. Ich habe die Jar Datei folgendermaßen erzeugt:
jar cvmf LogfileTool.mf TrafficTool.jar
die Datei wurde erfolgreich erzeugt. Dann habe ich die Java Dateien .class und. java hinzugefügt:
uvf TrafficTool.jar LogfileTool.class LogfileTool.java
die Dateien wurden auch hinzugefügt.
Das Problem ist, dass wenn ich die Jar Datei per Doppelklick aufrufe, wird die Datei standardmäßig mit dem Toll javaw geöffnet. Nur passiert nichts auf meinen DK hin? Der Mauszeiger wird kurz zur Sanduhr und dann wieder zum Mauszeiger, aber es passiert nix.
Ich habe die Datei über Eigenschaften mittels "Öffnen mit..." mit der DOS Konsole öffnen lassen, aber da öffnet sich nur die Konsole und das Arbeitsverzeichnis ist das, wo die jar Datei liegt.
Und lasse ich mit java.exe öffnen, erscheint kurz das DOS Fenster mit einer Meldung, die ich aber leider nicht entziffern kann, weil das Fenster sich sofort wieder schließt. Ich glaube aber nicht, dass das meine Ausgabe ist, soviel lässt sich erkennen.
Eigentlich möchte ich, dass die Jar Datei ein DOS Fenster öffnet und das Programm automatisch ausführt. Es sollte dann eine Ausgabe erzeugt werden. Es muss nicht unebdingt das DOS Fenster sein, aber irgendwas wo ich die Ausgabe sehen kann.
Normal rufe ich das Programm über die Konsole so auf und es funktioniert:
java LogfileTool
Das ist mein erster Versuch mit Jar Dateien. Hier könnt ihr euch meine MF Datei anschauen...
Aber ich erkenne nun das erste Wort, wenn das DOS Fenster sich nach dem DK kurz öffnet und wieder schließt...Exception
Aber wie gesagt, das Programm funktioniert, wenn ich es mit den java Kommandos über die Shell aufrufe. Was für eine Exception könnte das sein? Ich glaube nicht, dass sie in Bezug auf meine Klasse steht, eher allg. mit der Java Umgebung. Aber was weiß ich...
NACHTRAG +++++++++++++++++++++++++++++++
Hm...alsooo, folgende Befehle hab ich über die DOS Zeile getestet....
Dabei seit: 15.01.2006 Ort: - Alter: - Geschlecht: -
Verfasst So 12.02.2006 18:09 Titel
Also ich hab jetzt eine kleine grafische Ausgabe meinem Tool spendiert. Also mit JFrame, etc.
Die Ausgabe wird also nicht mehr auf der Kommandozeile ausgegeben, sondern in einem JFrame.
Das ganze funktioniert aber wieder nur, wenn ich das Programm über die Kommandozeile aufrufe, wie vorher eben auch.
Die JAR Datei bringt wieder nur kurz ein DOS Fenster mit der Exception Meldung und schließt sich sofort wieder.
Ich denke es wird die main class nicht gefunden, deswegen wird das Programm nicht ausgeführt über di eJAR Datei.
Stimmt vielleicht was mit meiner Manifest Datei nicht?
Dabei seit: 15.01.2006 Ort: - Alter: - Geschlecht: -
Verfasst So 12.02.2006 19:58 Titel
Es läuft jetzt! Das Problem war jetzt, nachdem ich die Ausgabe mit einer grafischen Oberfläche mache, dass ich die Eigenschaft "Öffnen mit..." der JAR Dateien nicht wieder umgestellt habe. JAR Dateien werden standardmäßig mit der JRE geöffnet, es geht auch mit javaw, aber ich hatte java.exe noch eingestellt, von den vorherigen Tests.
Also Fazit:
Problem war:
Meine JAR Datei lies sich nicht per DK ausführen. Mein Programm war so geschrieben, dass es eine Ausgabe auf die Standardausgabe macht. Fehlermeldung war hier:
Exception in Thread main java.lang.NoClassDefFoundError: LogfileTool.jar
Lösung:
Ich habe eine grafische Oberfläche geschrieben und die Ausgabe in ein JLabel geschrieben. Hat man die Standardeinstellung nicht verändert, also JAR Dateien mit jre öffnen bzw. mit dem Tool javaw, dann sollte das Programm per DK starten.
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst an Umfragen in diesem Forum nicht mitmachen.