當我使用這個CMD行: 罐子CMF arshad.mf ars.jar的* .class 我得到這個錯誤:無效的頭文件,而使用的jar歸檔
invalid header field name:Manifest-version
這是我的清單文件:
Manifest-Version: 1.0
Main-Class:t
我用UTF-8編碼做了記事本清單文件 - 是否有任何清單問題?
當我使用這個CMD行: 罐子CMF arshad.mf ars.jar的* .class 我得到這個錯誤:無效的頭文件,而使用的jar歸檔
invalid header field name:Manifest-version
這是我的清單文件:
Manifest-Version: 1.0
Main-Class:t
我用UTF-8編碼做了記事本清單文件 - 是否有任何清單問題?
冒號後添加一個空格:
Manifest-Version: 1.0
Main-Class: t
哇。這是一個完美的解決方案。thx很多:) – arshad 2009-01-08 16:18:17
是的,這是事實。
人們在爲jar寫清單文件時犯的一個常見錯誤是他們不會在冒號後面放置空格。根據你在這裏寫的內容,我不知道,如果不是這樣,但試試看吧。
例子:
Main-Class:someClass //wrong
Main-Class: someClass //correct
此外,清單文件必須保存爲UTF-8。你不一定要把它寫在MS記事本上並保存爲UTF-8編碼。這篇文章有一些很好的細節:
Invalid Header Field Name when adding manifest to JAR using Eclipse
記事本添加一些字節到前廣播數據的字節序。這將打破jar命令。一個體面的解決方案是不使用記事本和下載Notepad ++。在Notepad ++中,您從頂部欄中選擇'編碼',然後選擇'沒有BOM的UTF-8'。保存您的清單文件應用這個設置應該解決問題。如果沒有其他人。
嘿,夥計們,記住要upvote這個問題和答案,如果這對你有幫助!如果問題有5K +個觀點,問題應該有多於1票! – John 2013-08-24 02:24:07