私は解決のためにGoogleとStackOverflowを精査しており、これまでのところ見つからなかった。私は、Java 1.8を使用してWindowsのコマンドラインからマニフェストファイルを使用して、単純な実行可能な.jarパッケージを生成しようとしています。関連するファイルは、次のとおりです。実行ファイルのマニフェストファイルでjar.exeを使用する - 「メインマニフェスト属性なし」
Turtlephilia.java:
public class Turtlephilia {
public static void main(String[] args) {
System.out.println("i lurrrve turtles");
}
}
MANIFEST.MF:
Main-Class: Turtlephilia
do.bat:
javac Turtlephilia.java
jar cvmf manifest.mf Turtlephilia.jar Turtlephilia.class
java -jar Turtlephilia.jar
それがコンパイルdo.bat私が実行した場合アーカイブは正常に終了しますが、jarファイルを実行すると、次のエラーが生成されます。
no main manifest attribute, in Turtlephilia.jar
注:私は実際に成功し、このコマンドを使用してそれを実行することができる午前:
java -cp Turtlephilia.jar Turtlephilia
しかし、私はそれが実行可能なjarファイルにする必要があります。
私は間違っていますか?どれくらい難しいのですか?
メモ帳を使用してmanifest.mfを作成したことはありますか?目に見えない[バイトオーダーマーク](https://en.wikipedia.org/wiki/Byte_order_mark)(BOM)文字が冒頭にあると思われます。これは、技術的には 'Main-Class'で始まらないことを意味します。解決方法: 'Main-Class'の上に空白行を追加してください。 – VGR
メモ帳で編集しましたが、空白行を追加しても同じ問題が発生します。ちなみに、私が気づいているのは、NetBeansに.jarをドラッグして見てみると、META-INF \ MANIFEST.msの下のパッケージに、Manifest-Version:1.0、Created-By:のデフォルトマニフェストがあるということです。 。、私のメインクラスラインなし。私のマニフェストファイルを無視しているだけですか? –
ああ男。あなたは正しい軌道に乗っていた。 Main-Classはマニフェストファイルの最後の行で、後に改行が必要でした。 –