Gradleで実行可能なJARを作成する 質問する

Gradleで実行可能なJARを作成する 質問する

これまでは、Eclipse の「エクスポート...」機能を使用して実行可能な JAR ファイルを作成していましたが、ビルドの自動化のために IntelliJ IDEA と Gradle に切り替えました。

ここにあるいくつかの記事では「アプリケーション」プラグインが提案されていますが、これは私が期待した結果に完全にはつながりません (JAR のみで、起動スクリプトなどは含まれません)。

Eclipse の「エクスポート...」ダイアログと同じ結果を得るにはどうすればよいですか?

ベストアンサー1

実行可能なjarファイルは、マニフェストにMain-Classエントリを含むjarファイルです。そのため、jarタスクこのエントリをマニフェストに追加するには:

jar {
    manifest {
        attributes 'Main-Class': 'com.foo.bar.MainClass'
    }
}

マニフェストにクラスパス エントリを追加する必要もあるかもしれませんが、これも同じ方法で実行できます。

見るhttp://docs.oracle.com/javase/tutorial/deployment/jar/manifestindex.html


アプリケーション コンテキストをすでに定義している場合は、定義を複製するのではなく、再利用できます。

application {
  // Define the main class for the application.
  mainClass = 'com.foo.bar.MainClass'
}

jar {
  manifest {
    attributes 'Main-Class': application.mainClass
  }
}

おすすめ記事