Willkommen auf dem Portal für Mediengestalter
|
|
Autor |
Nachricht |
rueckblick
Threadersteller
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...
LogfileTool.mf:
Manifest-Version: 1.0
Main-Class: LogfileTool
NACHTRAG ++++++++++++++++++++++++++++++
wenn ich
java -jar TrafficTool.jar
eingebe, funktioniert das Programm.
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....
1.
Funktioniert (also bringt korrekte Ausgabe)
java -jar LogfileTool.jar
2.
java LogfileTool.jar
Exception in Thread main java.lang.NoClassDefFoundError: LogfileTool.jar
3.
Bringt eine Error Box.
javaw LogfileTool.jar
Could not find main class. Programm will exit.
4.
Macht scheinbar nichts. Es wird eine neue Kommandozeile erzeugt.
javaw -jar LogfileTool.jar
Interessant ist ja 2. und 3., aber wo liegt da mein Fehler? Evtl. an der Manifest Datei?
Zuletzt bearbeitet von rueckblick am Do 09.02.2006 21:20, insgesamt 1-mal bearbeitet
|
|
|
|
|
Account gelöscht
Ort: -
Alter: -
|
Verfasst Do 09.02.2006 21:27
Titel
|
|
|
hört sich eher an als würde da der einstiegpunkt fehlen. nimm doch faulerweise mal ne ide, ich weiß ehrlich gesagt gar nicht, wie das "zu fuß" geht
|
|
|
|
|
Anzeige
|
|
|
rueckblick
Threadersteller
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?
|
|
|
|
|
rueckblick
Threadersteller
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.
|
|
|
|
|
|
|
|
Ähnliche Themen |
php offline ausführen
[php] ob_start() und php ausführen?
Per Befehl JS nur in IE ausführen?
Script nur einmal ausführen
php5 ausführen mit _.htaccess
setTimeout ausführen bei mouseover
|
|
|
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.
|
|