2009-09-13 31 views

Antwort

19

Siehe Setting an Application's Entry Point

Wenn Sie eine Anwendung in einer JAR-Datei gebündelt haben, müssen Sie eine Möglichkeit, welche Klasse in der JAR-Datei, um anzuzeigen, Einstiegspunkt Ihrer Anwendung. Sie geben diese Informationen mit den Main-Class-Header in dem Manifest, das die allgemeine Form hat:

Main-Class: classname 

Der Wert classname ist der Name der Klasse, die Ihre Anwendung Einstiegspunkt ist.

Daran erinnern, dass der Einstiegspunkt ist eine Klasse eine Methode mit der Signatur mit

public static void main(String[] args). 

Nachdem Sie die Main-Class-Header im Manifest festgelegt hat, können Sie dann die JAR-Datei mit dem folgende Formular ausgeführt von der java-Befehl:

java -jar JAR-name 

Die Hauptmethode der im Main-Class-Header angegebenen Klasse wird ausgeführt.


Wir Erstgenannten manifest.txt mit folgendem Inhalt einer Textdatei erstellen:

Main-Class: MyPackage.MyClass 

Warnung: Die Textdatei muss mit einer neuen Zeile enden oder Wagenrücklauf. Die letzte Zeile wird nicht ordnungsgemäß analysiert, wenn sie nicht mit einer neuen Zeile oder Wagenrücklauf endet.

Wir haben dann eine JAR-Datei erstellen namens MyJar.jar indem Sie den folgenden Befehl eingeben:

jar cfm MyJar.jar Manifest.txt MyPackage/*.class 

Dies schafft die JAR-Datei mit einem Manifest mit dem folgenden Inhalt:

Manifest-Version: 1.0 
Created-By: 1.6.0 (Sun Microsystems Inc.) 
Main-Class: MyPackage.MyClass 

Wenn Sie die JAR-Datei mit dem folgenden Befehl ausführen, die Art der Haupt MyClass ausführt:

java -jar MyJar.jar 
-1

I den gleichen Fehler hatte. Das Problem war, dass Windows 10 plötzlich entschied, meinen Arbeitsbereich Ordner schreibgeschützt zu setzen.

Nachdem das schreibgeschützte Häkchen in den Optionen des Ordners entfernt wurde, wurde das Problem behoben.

Verwandte Themen