Java Servlet アプリでは大体の場合warを作りますが、Jenkinsみたいに java -jar xxx.war でServletコンテナが起動してそのままHTTPアクセス可能な、実行可能なwarを作るにはどうするのかな~というのをググった、参考リンクメモです。jarも作れるともっと嬉しい。
"executable war" とか、"executable war jar same time" とか、そんなキーワードでググりました。やっぱりみんな、やってみたいですよね。
Apache Tomcat の Maven プラグインで実現できる参考
Tomcat7以降っぽい。
- Apache Tomcat Maven Plugin - About Apache Tomcat Maven Plugin
- Apache Tomcat Maven Plugin - Executable War
標準のパッケージプラグインを使っていろいろ頑張る系参考
jar/warの標準のMavenパッケージプラグインで、いろいろオプション指定したり、クラスファイルやディレクトリを操作してjar/war同時に生成したり実行可能にしたりして頑張ってる。
- java - Using Maven to create "runnable WAR" - Stack Overflow
- java - How can I create an executable JAR with dependencies using Maven? - Stack Overflow
次がその中でも一番すっきりしてて分かりやすそう:
- jenkins.war のような実行可能 war ファイル作りたい - Qiita
- jenkins.war みたいな実行可能な war ファイルの作成 — 電卓片手に
- kui/executable-war-sample: 実行可能な war をパッケージングしてくれる maven プロジェクト
Spring Boot の Maven/Gradle プラグインでもショートカットできそう。
Stack Overflow でも使い方とかオプションについての質疑応答が幾つか見つかった: