jar-File mit "java.exe -jar" unter Vista öffnen

Status
Nicht offen für weitere Antworten.

Professor Chaos

Aktives Mitglied
Hi,

ich besitze eine Jar-File, die diverse Klassen beinhaltet. Öffne ich eine Konsole und führe java.exe mit dem Parameter -jar und meiner Jar-Datei als Argument aus, arbeitet mein Java-Programm exakt so, wie ich es möchte, habe also keine Probleme.

Allerdings möchte ich das Programm nicht "von Hand" in einer Konsole starten, sondern per Doppelklick. Daher änderte ich in der Windows Vista(!) Default-Programs-Einstellung das Programm, mit welchem .jar-Dateien geöffnet werden von meinem Packprogramm auf java.exe.

Das Problem ist nun, dass java.exe meine jar-Datei ohne Parameter öffnet, weswegen einfach garnichts passiert. Ich brauche also eine Möglichkeit, Windows Vista mitzuteilen, dass es jar-Dateien zwar mit java.exe öffnen soll, aber MIT dem Parameter "-jar". Ich habe schon herumgespielt, bekomme das aber nicht hin...

Was muss ich also tun, um jar-Dateien per Doppelklick ausführen zu können?
 

Professor Chaos

Aktives Mitglied
Danke für die Antwort, aber es funktioniert noch nicht wie gewünscht:

Während für dieselbe Jar-Datei der Aufruf java.exe -jar DATEI das Programm ausführt, liefert
javaw.exe DATEI die Fehlermeldung "Could not find the main class. Programm will exit."

Sicher, dass javaw.exe das richtige Programm ist?
 

L-ectron-X

Gesperrter Benutzer
Wahrscheinlich hast du am Ende deiner Manifest-Datei keine Leerzeile gelassen. Die ist Pflicht, sonst wird dieser Fehler, bei ansonsten intaktem Jar-File, ausgegeben. Bitte dazu auch mal die FAQ konsultieren, da sind solche Dinge ausführlich erklärt.

Der Standard-Interpreter für GUI-Anwendungen sollte immer javaw.exe sein, für Konsolen-Anwendungen java.exe.
 

Illuvatar

Top Contributor
Ich möchte anmerken dass ich es bei meinem Vista bisher auch noch nicht geschafft hab, .jar-Dateien per Doppelklick zu öffnen. Und ich hoffe ihr haltet mich für fähig, an die Leerzeile am Ende des Manifests zu denken ;)

(Ich hab allerdings auch nicht lange probiert, und vor dem letzten Formatieren gings glaub ich, da hatte java das automatisch so eingestellt)
 

Professor Chaos

Aktives Mitglied
Illuvatar hat gesagt.:
Ich möchte anmerken dass ich es bei meinem Vista bisher auch noch nicht geschafft hab, .jar-Dateien per Doppelklick zu öffnen. Und ich hoffe ihr haltet mich für fähig, an die Leerzeile am Ende des Manifests zu denken ;)

(Ich hab allerdings auch nicht lange probiert, und vor dem letzten Formatieren gings glaub ich, da hatte java das automatisch so eingestellt)

Geht mir beides genauso! :)
Meine Manifest hat auch eine Leerzeile am Ende (wobei ich erst gerade eben durch die FAQ lerne, was das eigentlich ist :roll:).

Vor dem Formatieren ging auf meinem Vista-Rechner das Ausführen per Doppelklick ebenfalls. Heute, also nach dem Neuaufspielen des Systems funktioniert es nicht mehr.

Ich spekuliere auf folgenden Grund:
Vor dem Format habe ich die JRE manuell installiert, also von SUN heruntergealden und installiert. Ich glaube, dass beim SP 1 von Vista die JRE bereits dabei war. Vielleicht ist diese einfach etwas anders konfiguriert...

Ich kann mich mit meiner Spekulation auch täuschen, aber die Ursache spielt für mich auch keine Rolle, nur die Lösung des Problems!

Ich werde erneut posten, sobald ich des Rätsels Lösung habe...
 

vbtricks

Mitglied
Salut,

ich habe die JRE auch manuell installiert und damit klappt das Ausführen per Doppelklick.

Der Befehl, der bei Doppelklick ausgeführt wird, lässt sich bei Vista aber auch manuell in der Registry ändern:

1. regedit.exe als Admin starten.
2. unter HKEY_CLASSES_ROOT sicherstellen, dass es einen Schlüssel mit dem Namen .jar gibt.
3. Den Default-Wert auf jarfile setzen (bzw. im Folgenden jarfile durch den dort gefundenen nicht-leeren Wert ersetzen)
4. Unter HKEY_CLASSES_ROOT sicherstellen, dass es den Schlüssel jarfile\shell\open\command gibt.
5. Der Default-Wert unter jarfile gibt die Datei-Typ-Beschreibung an, also z.B. "Executable Jar File"
6. Der Default-Wert unter jarfile\shell\open\command gibt den auszuführenden Befehl an, bei mir z.B.
Code:
"C:\Program Files\Java\jre1.6.0_05\bin\javaw.exe" -jar "%1" %*
(Pfad entsprechend anpassen)

Dann sollten sich spätestens nach einem Neustart des Rechners JAR-Dateien per Doppelklick starten lassen.


Stefan
 

Professor Chaos

Aktives Mitglied
Professor Chaos hat gesagt.:
Danke für die Antwort, aber es funktioniert noch nicht wie gewünscht:

Während für dieselbe Jar-Datei der Aufruf java.exe -jar DATEI das Programm ausführt, liefert
javaw.exe DATEI die Fehlermeldung "Could not find the main class. Programm will exit."

Sicher, dass javaw.exe das richtige Programm ist?
Dies lag daran, dass man auch bei Verwendung von javaw den Parameter -jar benötigt, das war also nicht die Lösung.


Professor Chaos hat gesagt.:
Ich werde erneut posten, sobald ich des Rätsels Lösung habe.
Stefan kam mir zwar zuvor, meine Lösung möchte ich aber dennoch darstellen, vielleicht ist diese einigen lieber, da man hiermit nicht an der Registry rumfummeln muss. Ich habe auch nicht die Lösung gefunden, dafür aber eine!

Wie bereits beschrieben, liegt das Problem darin, dass Windows java.exe bzw. javaw.exe mit einem Parameter (nämlich -jar) aufrufen soll, man dies Windows aber nicht mitteilen kann (außer über die registry). Daher mein Umweg, die Dateien nicht mit der javaw.exe zu öffnen, sondern mit einer selbst geschriebenen Batch-Datei, die javaw mit dem entsprechenden Parameter aufruft.

Es muss also eine neue Datei mit der Endung .bat angelegt werden. Diese enthält folgenden Text/Code:
Code:
@echo off
TITLE executing jar file
echo.
echo executing %1
echo.
"C:\Program Files (x86)\Java\jre1.6.0_04\bin\javaw.exe" -jar %1
(Pfad zur JRE entsprechend anpassen)

Diese bat-Datei kann man prinzipiell in jeden beliebigen Ordner kopieren, ich halte als Ordner denselben Ordner der javaw.exe für angebracht. Als Name wählte ich javawJar.bat.

Was zu tun bleibt, ist Windows mitzuteilen, dass es Jar-Dateien nicht mehr mit der javaw.exe öffnet, sondern mit der neuen Datei javawJar.bat.

Unter Vista geht man ins "Control Panel", "Default Programs", "Associate a file type or protocol with a program" und wählt dort für Jar die eigene bat an.

Und schon können Jar-Dateien wieder per Doppelklick ausgeführt werden.
 
M

MiDniGG

Gast
Versteh ich nicht...
Ich hab einfach, wie bei XP, den JDK-Pfad bei den Umgebungsvariablen in den PATH reingeschrieben und schon gings...

Naja. Warum einfach, wenns auch kompliziert geht. :)

Zu dem ursprünglichen Problem. Es könnte natürlich auch einfach daran liegen, dass in der Manifest keine Mainclass eingetragen wurde. Aba da sollte ja wirklich die FAQ helfen :)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
P java.nio.file unter Java 6 verwenden Allgemeine Java-Themen 4
O Input/Output java.io.File beenden Allgemeine Java-Themen 5
R Delete files before creating new from temp using Java file method Allgemeine Java-Themen 1
S File lesen und schreiben Java 6 Allgemeine Java-Themen 2
J .java-Dateitext Compile zur Laufzeit ohne File Allgemeine Java-Themen 15
C Authentifizierung mit java.nio.file? Allgemeine Java-Themen 5
G Java/LibGDX File Loading Exception Allgemeine Java-Themen 2
D Java Anwendung mit dll File Allgemeine Java-Themen 5
F Open source file übersetzen Phython -> Java Allgemeine Java-Themen 4
J Java Software Compare Files und Neue File erstellen Allgemeine Java-Themen 0
J Java Download Filedownload File.getFileName Allgemeine Java-Themen 3
R Java .class-File-Konstrunkt mit Programm visualisieren Allgemeine Java-Themen 18
P Java Dynamic Web Project -> config File Allgemeine Java-Themen 1
D Variablen java.io.File zum vergleichen abspeichern Allgemeine Java-Themen 1
N Input/Output Mit Windows 7 erzeugtes zip-File in Java 7 öffnen Allgemeine Java-Themen 5
H XML-File mit Java erzeugt Frage Allgemeine Java-Themen 10
V C-Header Datei aus .java File herstellen Allgemeine Java-Themen 10
S File im windowexploer öffnen über java Allgemeine Java-Themen 6
A File Java Pfad Allgemeine Java-Themen 5
M eigene Klasse durch Composition mit java.io.File erweitern Allgemeine Java-Themen 3
F Java File.getUsableSpace(); Allgemeine Java-Themen 4
U Java file aus Classpath lesen Allgemeine Java-Themen 1
G toString() von java.io.File überschreiben Allgemeine Java-Themen 8
M Wie Java-Programm über Batch-file starten? Allgemeine Java-Themen 8
A java.net.UnkownHostException: null bei jar-File Allgemeine Java-Themen 16
M Java Programm in .exe File Allgemeine Java-Themen 15
R Erkennung der Java-Installation im Batch-File Allgemeine Java-Themen 2
T ausführbares jar File mit integriertem Java Runtime 6+JOGL Allgemeine Java-Themen 7
W java.io.file Originalziel bei .lnk ermitteln? Allgemeine Java-Themen 5
Nils_Langner Java File vs. WinAPI Allgemeine Java-Themen 3
märliprinz CSS-File mit Java analysieren Allgemeine Java-Themen 3
D new File() -> Java hängt sich manchmal auf Allgemeine Java-Themen 14
G Java file speichern Allgemeine Java-Themen 2
G java funktion in JSP file aufrufen. Allgemeine Java-Themen 2
W Jar-File Start nur über Terminal Allgemeine Java-Themen 13
R 11 GB File lesen ohne zu extrahieren Filedaten Bereich für Bereich adressieren dann mit Multi-Thread id die DB importieren Allgemeine Java-Themen 3
D Read JSON File Problem Allgemeine Java-Themen 9
S Umstellung von File auf Path - Probleme mit Stream Allgemeine Java-Themen 5
C jar File mehrfach aufrufen (als Windows Dienst) Allgemeine Java-Themen 5
N File Path mit Variablen angeben Allgemeine Java-Themen 1
izoards Zugriff auf gemeinsame Ressource (CSV-File) Allgemeine Java-Themen 3
S Class File Editor -> Source not found Allgemeine Java-Themen 4
F jar File ausführen Allgemeine Java-Themen 14
M File Binary Representation Allgemeine Java-Themen 1
N jar File auf Mac mit Doppelklick starten Allgemeine Java-Themen 5
G File not found - nach dem Kompilieren Allgemeine Java-Themen 6
T Jar File zu exe... Allgemeine Java-Themen 3
M Foreign Memory API / Memory-Mapped File Allgemeine Java-Themen 0
T String-Manipulation beim Ablauf in Eclipse und als JAR-File Allgemeine Java-Themen 8
F Input/Output FileNotFoundException, obwohl File existiert Allgemeine Java-Themen 5
G Excel File öffnen, in Zelle schreiben, abspeichern Allgemeine Java-Themen 6
L JAR-File auf Ilias (LMS) laufen lassen Allgemeine Java-Themen 0
ralfb1105 Classpath Directory fuer Properties File Allgemeine Java-Themen 2
L File beim Kopieren in einen anderen Ordner umbenennen Allgemeine Java-Themen 6
J File in Package erstellen & lesen mit Programmstart in externe Projekt Allgemeine Java-Themen 3
I File ausführen und mein Programm bearbeiten lassen Allgemeine Java-Themen 11
A File lesen Codierung Charset Allgemeine Java-Themen 5
M Key-File im selben Ordner speichern? Allgemeine Java-Themen 18
I TrueZip add file to archive Allgemeine Java-Themen 10
T Probleme mit dem Pfad zum Propertie file Allgemeine Java-Themen 7
J ftp - delete file ohne appache Allgemeine Java-Themen 8
X Klassen File-Klasse wird als Directory markiert Allgemeine Java-Themen 8
T ImageIO.read -> Can`t read input file Allgemeine Java-Themen 11
L Applet Problem "security: Trusted libraries list file not found" ? Allgemeine Java-Themen 7
C Swing File[] als klickbare links in irgendeinem Swing Element Allgemeine Java-Themen 3
H Kennt sich jemand mit Eclipse und dem Thema Jar-File aus ? Allgemeine Java-Themen 6
H Laden einer (Resourcendatei) aus einem Jar-File Allgemeine Java-Themen 17
L CSV File lesen, in ArrayList speichern und ausgeben Allgemeine Java-Themen 3
M xlsx File auslesen Exception occured Allgemeine Java-Themen 13
offi Drag and Drop mehrerer File aus Explorer in JTable Allgemeine Java-Themen 1
Cromewell JavaFX FXML-File lädt unter Ubuntu nicht Allgemeine Java-Themen 7
AssELAss Log4j Logging Ausgabe für jede Klasse in seperates File Allgemeine Java-Themen 2
thet1983 Input/Output read properties file from classpath Allgemeine Java-Themen 3
J Umwandeln von URL zu File und danach kopieren geht nicht Allgemeine Java-Themen 1
J Properties file ändern Allgemeine Java-Themen 12
S Executable Jar File startet nicht unter Windows 10 Allgemeine Java-Themen 3
B Objekte anhand von Properties file Allgemeine Java-Themen 41
Dechasa Input/Output Write into File Allgemeine Java-Themen 2
N Maven ObjectMapper Error wenn das File gespeichert wird Allgemeine Java-Themen 0
H Security Manager (IIOException: Can't read input file!) Allgemeine Java-Themen 2
H File.listFiles() funktioniert nicht... Allgemeine Java-Themen 10
C Input/Output Problem bei Datei verschiebung mit File.move und Paths.get() Allgemeine Java-Themen 26
X Zeile unter einer bestimmen Zeile hinzufügen(File) Allgemeine Java-Themen 1
C file.delete() funktioniert bei zweiten aufruf nicht mehr Allgemeine Java-Themen 3
M Desktop jar File icon Ändern? Allgemeine Java-Themen 14
O Sax-Parser ließt XML-File doppelt Allgemeine Java-Themen 1
Thallius Custom File Chooser Allgemeine Java-Themen 1
C .jar File lässt sich nur über Konsole öffnen Allgemeine Java-Themen 1
G SecurityManager/Policy-File/Reflection Allgemeine Java-Themen 0
M pdf File bzw. ausgefüllte pdf Formulare drucken Allgemeine Java-Themen 2
S Input/Output File Not Found FileReader Allgemeine Java-Themen 6
Thallius Serialisiertes File kann auf anderem Rechner nicht geladen werden Allgemeine Java-Themen 12
S runnable jar file in Verbindung mit itext Allgemeine Java-Themen 3
M File IO Klasse ... wie einbinden Allgemeine Java-Themen 6
O Freies Tool zum Jar-File obfuscaten gesucht! Allgemeine Java-Themen 5
F File.listFiles ohne .sort Allgemeine Java-Themen 6
B XML File JAXB Allgemeine Java-Themen 0
S Platzverbrauch, File oder String Allgemeine Java-Themen 14
J Runnable jar-File: Fehlermeldung Allgemeine Java-Themen 2
P Kurze Frage: aus einer File die Zeilenanzahl auslesen Allgemeine Java-Themen 9

Ähnliche Java Themen

Neue Themen


Oben