Maven Assemblyプラグインを使用したFat JARの作成
サンプルプロジェクト: tutorial-server-get-started-maven
Maven Assemblyプラグインは、プロジェクトの出力を、依存関係、モジュール、サイトドキュメント、その他のファイルを含む単一の配布可能なアーカイブに結合する機能を提供します。
Assemblyプラグインの設定
アセンブリをビルドするには、まずAssemblyプラグインを設定する必要があります。
pom.xmlファイルを開き、メインアプリケーションクラスが指定されていることを確認します。
xml<properties> <main.class>io.ktor.server.netty.EngineMain</main.class> </properties>この例では、
EngineMainがサーバーの作成に使用されているため、アプリケーションのメインクラスは使用されるエンジンに依存します。embeddedServerを使用する場合、アプリケーションのメインクラスはcom.example.ApplicationKtになります。pluginsブロックにmaven-assembly-pluginを追加します。xml<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <version>3.7.1</version> <configuration> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> <archive> <manifest> <addClasspath>true</addClasspath> <mainClass>${main.class}</mainClass> </manifest> </archive> </configuration> <executions> <execution> <id>assemble-all</id> <phase>package</phase> <goals> <goal>single</goal> </goals> </execution> </executions> </plugin>
アセンブリのビルド
アプリケーションのアセンブリをビルドするには、ターミナルを開いて次のコマンドを実行します。
Bash
mvn packageこれにより、.jarファイルを含むアセンブリ用の新しいtargetディレクトリが作成されます。
生成されたパッケージを使用してDockerでアプリケーションをデプロイする方法については、Dockerのヘルプトピックを参照してください。
アプリケーションの実行
ビルドされたアプリケーションを実行するには、以下の手順に従ってください。
新しいターミナルウィンドウで、
java -jarコマンドを使用してアプリケーションを実行します。サンプルプロジェクトの場合は、次のようになります。Bashjava -jar target/tutorial-server-get-started-maven-0.0.1-jar-with-dependencies.jarアプリが起動すると、確認メッセージが表示されます。
Bash[main] INFO Application - Responding at http://0.0.0.0:8080URLリンクをクリックして、デフォルトのブラウザでアプリケーションを開きます。

