Die Java-JAR-Datei ... konnte nicht gestartet werden

Ich versuche, die Datei http://algs4.cs.princeton.edu/code/algs4.jar herunterzuladen und mit Jar Launcher (der Standardanwendung) zu starten. Allerdings bekomme ich das:

Geben Sie hier die Bildbeschreibung ein

Nach https://discussions.apple.com/thread/4827576?tstart=0 habe ich auch versucht, Archive Utility zu verwenden; Dies scheint eine Datei zu erstellen, algs4.jar.cpgzaber ich bin mir nicht sicher, was ich damit machen soll. Wie kann ich die JAR-Datei öffnen?

Welche Fehlermeldungen haben Sie in der Konsole gesehen?

Antworten (2)

Obwohl die Fehlermeldung besagt, dass die Konsole überprüft werden soll, konnte ich dort nichts Nützliches finden. Wenn Sie jedoch versuchen, die JAR-Datei über das Terminal auszuführen, erhalten Sie diesen Fehler:

no main manifest attribute, in ./algs4.jar

Dieser Fehler bedeutet, dass der JAR-Datei der Parameter „Main-Class“ in ihrer MANIFEST.MF-Datei fehlt. Der Parameter Main-Class teilt der Java-Laufzeit mit, welche Klasse der Einstiegspunkt ist , dh welche Klasse beim Start zuerst ausgeführt werden soll.

Sie können diesen Parameter über das Terminal hinzufügen. Laden Sie zunächst die JAR-Datei von der Princeton-Website herunter und führen Sie dann den folgenden Befehl aus (vorausgesetzt, die JAR-Datei befindet sich in Ihrem Downloads-Ordner):

jar ufe ~/Downloads/algs4.jar TestAlgs4

Dieser Befehl aktualisiert die Datei MANIFEST.MF im JAR. Sobald dies erledigt ist, sollte die JAR-Datei erfolgreich vom Finder oder Terminal ausgeführt werden.

Screenshot von algs4.jar läuft

Trotzdem erhalten Sie den Fehler nur, wenn Sie versuchen, das JAR wie eine ausführbare Datei auszuführen. Ich glaube nicht, dass du dazu bestimmt bist. Sie sollten die JAR-Datei einfach an einem Ort ablegen, an dem die Java-Laufzeitumgebung sie finden kann, und dann in dem Code, den Sie schreiben, darauf verweisen, während Sie die Übungen in diesem Buch durchführen. Hier gibt es klare Anweisungen, was Sie mit der JAR-Datei hier tun sollen: https://algs4.cs.princeton.edu/code/

Dieser letzte Absatz ist die eigentliche Antwort auf dieses XY-Problem. Ich bin froh, dass OP die Hintergrundinformationen bereitgestellt hat, um dies richtig recherchieren zu können, und danke, dass Sie diese Frage wiederbelebt haben!
Was muss ich für andere JAR-Dateien eingeben? Ich erhalte "Hauptklasse ufe konnte nicht gefunden oder geladen werden"
Höchstwahrscheinlich bedeutet dies, dass die JAR-Datei eine Bibliothek ist und nicht direkt ausgeführt werden soll.

Wie die Fehlermeldung sagt, können Sie die Konsole (/Applications/Utilities/Console) auf Fehlerprotokolle überprüfen. Sie können auch ein Terminalfenster öffnen und das JAR von der Befehlszeile aus ausführen, was dazu führen sollte, dass alle Fehler im Terminal ausgegeben werden. Wenn sich Ihr JAR in Ihrem Download-Ordner befindet, würden Sie Folgendes ausführen:

java -jar ~/Downloads/algs4.jar

Sobald Sie den Fehler haben und ihn nicht finden können, aktualisieren Sie Ihre Frage und wir können versuchen, weitere Informationen bereitzustellen.