アプリケーションを実行する
アプリケーションを jar としてパッケージ化し、組み込み HTTP サーバーを使用する最大の利点の 1 つは、他のアプリケーションと同じようにアプリケーションを実行できることです。このサンプルは、Spring Boot アプリケーションのデバッグに適用されます。特別な IDE プラグインや拡張機能は必要ありません。
以下のオプションは、開発のためにアプリケーションをローカルで実行するのに最適です。本番環境の デプロイについては、本番用にアプリケーションをパッケージ化するを参照してください。 |
このセクションでは、jar ベースのパッケージについてのみ説明します。アプリケーションを war ファイルとしてパッケージ化することを選択した場合は、サーバーと IDE のドキュメントを参照してください。 |
IDE からの実行
IDE から Spring Boot アプリケーションを Java アプリケーションとして実行できます。ただし、最初にプロジェクトをインポートする必要があります。インポート手順は、IDE とビルドシステムによって異なります。ほとんどの IDE は Maven プロジェクトを直接インポートできます。例: Eclipse STS ユーザーは、File
メニューから Import…
→ Existing Maven Projects
を選択できます。
プロジェクトを IDE に直接インポートできない場合は、ビルドプラグインを使用して IDE メタデータを生成できる場合があります。Maven には、Eclipse [Apache] (英語) および IDEA [Apache] (英語) のプラグインが含まれています。Gradle は、さまざまな IDE (英語) のプラグインを提供します。
誤って Web アプリケーションを 2 回実行すると、「ポートはすでに使用されています」というエラーが表示されます。Eclipse Spring Tools ユーザーは、Run ボタンではなく Relaunch ボタンを使用して、既存のインスタンスを確実に閉じることができます。 |
パッケージ化されたアプリケーションとして実行する
Spring Boot Maven または Gradle プラグインを使用して実行可能 jar を作成する場合、次の例に示すように、java -jar
を使用してアプリケーションを実行できます。
$ java -jar target/myapplication-0.0.1-SNAPSHOT.jar
リモートデバッグサポートを有効にしてパッケージ化されたアプリケーションを実行することもできます。これにより、次の例に示すように、パッケージ化されたアプリケーションにデバッガーを接続できます。
$ java -agentlib:jdwp=server=y,transport=dt_socket,address=8000,suspend=n \
-jar target/myapplication-0.0.1-SNAPSHOT.jar
Maven プラグインの使用
Spring Boot Maven プラグインには、アプリケーションをすばやくコンパイルして実行するために使用できる run
ゴールが含まれています。IDE の場合と同様に、アプリケーションは展開された形式で実行されます。次の例は、Spring Boot アプリケーションを実行する典型的な Maven コマンドを示しています。
$ mvn spring-boot:run
次の例に示すように、MAVEN_OPTS
オペレーティングシステム環境変数を使用することもできます。
$ export MAVEN_OPTS=-Xmx1024m
Gradle プラグインの使用
Spring Boot Gradle プラグインには、アプリケーションを展開形式で実行するために使用できる bootRun
タスクも含まれています。bootRun
タスクは、org.springframework.boot
および java
プラグインを適用するたびに追加され、次の例に示されています。
$ gradle bootRun
次の例に示すように、JAVA_OPTS
オペレーティングシステム環境変数を使用することもできます。
$ export JAVA_OPTS=-Xmx1024m
ホットスワップ
Spring Boot アプリケーションはプレーン Java アプリケーションであるため、JVM ホットスワップはそのまま使用できます。JVM のホットスワップは、置き換えることができるバイトコードによって多少制限されます。より完全なソリューションには、JRebel (英語) を使用できます。
spring-boot-devtools
モジュールには、アプリケーションの迅速な再起動のサポートも含まれています。詳細については、「使い方 ガイド」のホットスワップセクションを参照してください。