質問
このcmd行を使用する場合: jar cmf arshad.mf ars.jar * .class このエラーが表示されます:
invalid header field name:Manifest-version
これは私のマニフェストファイルです:
Manifest-Version: 1.0
Main-Class:t
iは、UTF-8エンコーディングのメモ帳でマニフェストファイルを作成しました-マニフェストに問題はありますか?
解決
コロンの後にスペースを追加します。
Manifest-Version: 1.0
Main-Class: t
他のヒント
はい、本当です。
jarファイル用にマニフェストファイルを作成する際によくある間違いは、コロンの後にスペースを入れないことです。あなたがここに書いたものに基づいて、それがそれであるかどうかはわかりませんが、試してみてください。
例:
Main-Class:someClass //wrong
Main-Class: someClass //correct
また、マニフェストファイルはUTF-8として保存する必要があります。 MS Notepadに書き込み、UTF-8エンコードとして保存することは必ずしも安全ではありません。この投稿にはいくつかの良い詳細があります:
マニフェストの追加時に無効なヘッダーフィールド名Eclipseを使用してJARに追加
メモ帳は、データのエンディアンをブロードキャストするために、いくつかのバイトを前面に追加します。これにより、jarコマンドが破損します。適切な解決策は、メモ帳を使用せずにNotepad ++をダウンロードすることです。 Notepad ++では、トップバーから「エンコード」を選択し、「BOMなしのUTF-8」を選択します。この設定を適用してマニフェストファイルを保存すると、問題が解決するはずです。他にない場合。
所属していません StackOverflow