Heim >Java >javaLernprogramm >Wie führe ich eine JAR-Datei mit externen Abhängigkeiten aus?
Kompilieren einer JAR-Datei mit einer angegebenen Hauptklasse und abhängigen Bibliotheken (gespeichert in „lib“-Verzeichnis), schlägt der Versuch, die JAR-Datei mit dem benutzerdefinierten Klassenpfad auszuführen, fehl. Zu den aufgetretenen Fehlern gehören „Hauptklasse konnte nicht gefunden oder geladen werden“ oder „NoClassDefFoundError“.
Der Java-Befehl -jar ignoriert den Parameter -cp, wenn eine JAR-Datei angegeben wird. Dies bedeutet, dass alle Versuche, mit -cp einen benutzerdefinierten Klassenpfad anzugeben, wirkungslos sind.
Um die JAR-Datei mit dem externen Klassenpfad auszuführen, stehen zwei Optionen zur Verfügung:
Alle Jar-Dateien in das Manifest einbeziehen:
Klassenpfad in der Befehlszeile angeben:
Geben Sie in der Befehlszeile die Option -cp mit einer durch Doppelpunkte getrennten Liste aller erforderlichen JAR-Dateien an, einschließlich Ihre JAR-Datei und das Verzeichnis „lib“:
java -cp MyJar.jar:lib/* com.somepackage.subpackage.Main
Hinweis: Es ist nicht möglich, zusätzliche JAR-Dateien in das JAR aufzunehmen Datei selbst, da Sie die .class-Dateien extrahieren und direkt in Ihrem JAR ablegen müssten.
Das obige ist der detaillierte Inhalt vonWie führe ich eine JAR-Datei mit externen Abhängigkeiten aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!