So führen Sie ein JAR-Paket in Java aus: (Empfohlen: Java-Video-Tutorial)
Jeder weiß, dass ein Java-Anwendungsprojekt das kann in ein JAR gepackt werden soll, müssen Sie natürlich eine Hauptklasse mit einer Hauptfunktion als Programmeinstiegspunkt Ihres JAR-Pakets angeben.
Die spezifische Methode besteht darin, die Datei MANIFEST.MF im Verzeichnis META-INF im JAR-Paket zu ändern.
Zum Beispiel gibt es ein JAR-Paket namens test.jar, das eine Hauptklasse mit einer Hauptfunktion enthält: test.someClassName
Wir müssen nur den folgenden Satz in MANIFEST.MF hinzufügen :
Main-Class: test.someClassName
Dann können wir java -jar test.jar in die Konsole eingeben, um das Jar auszuführen.
Methoden zum Ausführen von JAR-Paketen von Drittanbietern:
Methode 1. Verwenden Sie Bootstrap Classloader, um diese Klassen zu laden
Wir können die folgenden Parameter verwenden Laufzeit:
-Xbootclasspath: Ersetzt den System-Java-Klassenpfad vollständig. Es ist am besten, ihn nicht zu verwenden.
-Xbootclasspath/a: Wird geladen, nachdem die Systemklasse geladen wurde. Verwenden Sie dies im Allgemeinen.
-Xbootclasspath/p: Laden Sie die Systemklasse vor dem Laden. Achten Sie auf deren Verwendung. Es ist nicht gut, wenn ein Konflikt mit der Systemklasse auftritt.
win32 java -Xbootclasspath/a: some.jar;some2.jar; -jar test.jar unix java -Xbootclasspath/a: some.jar:some2.jar: -jar test.jar
Jedes Glas wird im Win32-System durch Semikolon getrennt , und Doppelpunkt im Unix-System Trennen
Methode 2: Verwenden Sie den Extension Classloader zum Laden
Sie können alle JARs, die geladen werden müssen, unter %JRE_HOME%/lib werfen /ext, in diesem Verzeichnis wird das JAR-Paket vom Extension Classloader geladen, nachdem der Bootstrap Classloader seine Arbeit abgeschlossen hat. Sehr praktisch und sehr sorgenfrei. :)
Methode 3: Verwenden Sie weiterhin AppClassloader zum Laden, aber es ist kein Klassenpfadparameter erforderlich
Wir fügen MANIFEST.MF den folgenden Code hinzu:
Klassenpfad: lib/some.jar
lib ist ein Unterverzeichnis im selben Verzeichnis wie test.jar, und das some.jar-Paket, auf das test.jar verweisen soll, befindet sich darin.
Wenn mehrere JAR-Pakete referenziert werden müssen:
Klassenpfad: lib/some.jar lib/some2.jar
Verwenden Sie Leerzeichen für jedes einzelne JAR Einfach trennen. Achten Sie darauf, relative Pfade zu verwenden.
Methode 4. Classloader zum Laden anpassen
Diese Methode ist im Grunde die ultimative Lösung für bekannte Java-Anwendungen wie Tomcat und JBoss usw .
Weitere Java-Kenntnisse finden Sie in der Spalte Java Basic Tutorial.
Das obige ist der detaillierte Inhalt vonWie führe ich ein JAR-Paket in Java aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!