Ein interessanter Nebeneffekt verursacht ein Problem beim Starten von ausführbaren JAR-Dateien an der Eingabeaufforderung.
Wenn Sie es versuchen (in einer Eingabeaufforderung):
jarfile.jar parameter
Keine Freude, denn dies wird wie folgt übersetzt (was nicht funktioniert):
javaw.exe -jar jarfile.jar parameter
Der folgende Befehl funktioniert jedoch:
java.exe -jar jarfile.jar parameter
Wenn Sie die Zuordnung im Dateimanager wie oben beschrieben ändern, um:
"C:\Program Files\Java\j2re1.4.2_04\bin\java.exe" -jar "%1" %*
Dann können Sie Folgendes eingeben:
jarfile.jar parameter
in der Eingabeaufforderung und es wird jetzt funktionieren!
BEARBEITEN: (Sie erhalten jedoch ein schwarzes Konsolenfenster, wenn Sie eine formularbasierte (nicht konsolenbasierte) Java-App ausführen. Dies ist also keine ideale Lösung.)
Wenn Sie diese JAR-Dateien durch Doppelklicken in Windows ausführen, werden keine Parameter übergeben, sodass Ihr Java-Code die Stapelüberlauf-Ausnahme behandeln und am Ende eine Funktion zum Drücken einer Taste enthalten muss. Andernfalls verschwindet das Fenster einfach.
Um einen Parameter in Windows zu übergeben, müssen Sie eine Verknüpfung zur JAR-Datei erstellen, die den Parameter in der Zielzeile enthält (klicken Sie mit der rechten Maustaste auf die Verknüpfung und wählen Sie Eigenschaften aus). Sie können dem JAR-Dateisymbol selbst keine Parameter hinzufügen Weg.
Hier gibt es keine einheitliche Lösung, aber Sie hätten das gleiche Problem mit jeder anderen Konsolenanwendung.
Es gibt eine Windows-Freeware-Anwendung namens "bat to exe", mit der Sie eine exe-Datei aus einer .bat-Datei mit der entsprechenden Befehlszeile erstellen können. Sie können die JAR-Datei mit dieser Anwendung auch in die Exe einbetten und sie nach Abschluss der Ausführung bereinigen. Dies ist möglicherweise eine elegantere Lösung.