JAR-Dateien mit expliziter Klassenpfadangabe ausführen
Beim Versuch, eine JAR-Datei über die Befehlszeile auszuführen und den Klassenpfad anzugeben, stoßen Benutzer häufig auf Folgendes Fehler aufgrund der Nichtbeachtung der richtigen Syntax oder JAR-Einschränkungen. Hier finden Sie eine ausführliche Erläuterung des Problems und mögliche Lösungen:
Verstehen des JAR-Parameters -jar
Bei Verwendung des Parameters -jar wird die JAR-Datei zur alleinigen Benutzerquelle Klassen, wobei alle anderen Klassenpfadeinstellungen überschrieben werden. Das bedeutet, dass -cp nicht in Verbindung mit -jar verwendet werden kann.
Option 1: Dateien in Manifest einschließen
Um benötigte JAR-Dateien beim Packen Ihres JAR einzuschließen, geben Sie Folgendes an ihre relativen Pfade im Class-Path-Attribut des Manifests. Dadurch wird sichergestellt, dass die erforderlichen Bibliotheken in die JAR-Datei integriert und bei der Ausführung zugänglich sind.
Option 2: Klassenpfad in der Befehlszeile angeben
Wenn Sie JAR-Dateien in die manifest nicht möglich ist, können Sie den gesamten Klassenpfad, einschließlich Ihrer JAR-Datei, in der Befehlszeile mit -cp angeben. Dieser Ansatz ermöglicht eine direkte Kontrolle über den während der Ausführung verwendeten Klassenpfad.
Beispielbefehl:
java -cp MyJar.jar:lib/* com.somepackage.subpackage.Main
In diesem Beispiel ist MyJar.jar die Haupt-JAR-Datei und lib/* stellt das Verzeichnis dar, das die Abhängigkeiten enthält. Die Main-Klasse im Paket com.somepackage.subpackage wird als Einstiegspunkt für das Programm verwendet.
Das obige ist der detaillierte Inhalt vonWie kann ich eine JAR-Datei mit einem expliziten Klassenpfad korrekt ausführen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!