Frage

Wenn ich diese cmd Zeile verwenden: jar cmf arshad.mf ars.jar * .class Ich bekomme diese Fehlermeldung:

invalid header field name:Manifest-version

Das ist meine Manifest-Datei:

Manifest-Version: 1.0
Main-Class:t

Ich habe die Manifest-Datei mit Notepad in UTF-8-Codierung - gibt es irgendein Problem mit dem Manifest

?
War es hilfreich?

Lösung

Fügen Sie ein Leerzeichen nach dem Doppelpunkt:

Manifest-Version: 1.0
Main-Class: t

Andere Tipps

Ja, es ist wahr.

Ein häufiger Fehler Leute machen, wenn ihr Manifest-Dateien für Glas des Schreibens ist, dass sie darf kein Leerzeichen nach dem Doppelpunkt. Ich weiß nicht, auf das, was Sie hier schreiben, wenn, dass es oder nicht, aber probieren Sie es aus.

Beispiel:

Main-Class:someClass //wrong
Main-Class: someClass //correct

Auch Ihre Manifest-Datei muss als UTF-8 gespeichert werden. Sie sind nicht unbedingt sicher auf MS Notepad Schreiben und Speichern als UTF-8-Codierung. Dieser Beitrag hat einige gute Details:

ungültige Header-Feldnamen beim Hinzufügen manifest JAR mit Eclipse

Notepad fügt einige Bytes auf der Vorderseite die Bytereihenfolge der Daten zu übertragen. Dadurch wird der Befehl jar brechen. Eine anständige Lösung ist nicht Notepad verwenden und herunterladen Notepad ++. In Notepad ++ Sie 'encoding' aus der oberen Leiste, und wählen Sie 'UTF-8 ohne BOM'. Speichern der Manifest-Datei mit dieser Einstellung angewendet sollte das Problem lösen. Wenn es keine andere.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top