Menu Close

第7章 開発モード

開発モードで Open Liberty を実行する場合、統合開発環境(IDE)またはテキストエディターから直接コード、デプロイ、テスト、およびデバッグを行うことができます。dev モードとして知られる開発モードを有効にして、Maven または Gradle ビルド自動化ツールのいずれかと連携できます。

dev モードでは、コードへの変更を迅速に繰り返し実行し、オンデマンドまたは自動ユニットおよび統合テストから即座にフィードバックを受け取ることができます。また、デバッガーを割り当てて、いつでもコードを実施することもできます。dev モードは、Open Liberty Maven プラグインの目標として、または Liberty Gradle プラグイン のタスクとしても利用でき ます。実行中のサーバーを再起動せずにアプリケーションをリアルタイムで編集および監視できるように、Open Liberty の機能セットを統合します。dev モードは、変更のデプロイ、実行テスト、およびデバッグの 3 つの主要なフォーカスエリアに対応します。

7.1. dev モードでの Open Liberty の実行

dev モードで Open Liberty を実行するには 、Open Liberty Maven プラグインまたは Open Liberty Gradle プラグインを有効 にして、以下の コマンドのいずれかを実行します。

maven: mvn liberty:dev

gradle: gradle libertyDev

7.1.1. コードの変更の検出、再コンパイル、デプロイ

Dev モードは、IDE またはテキストエディターに新しい変更を保存するたびに、コードの変更を自動的に検出、再コンパイル、デプロイできます。dev モードは、アプリケーションソースに以下の変更を自動的に検出します。

  • Java ソースファイルとファイル変更のテスト
  • リソースファイルの変更
  • 設定ファイルと設定ファイルの変更
  • Gradle ユーザーの Maven ユーザーまたは build .gradle ファイルの pom. xml ファイルに新しい依存関係を追加
  • Open Liberty サーバー設定に新機能を追加

リソースファイル、設定ファイル、設定ディレクトリーの変更は、ターゲットディレクトリーにコピーされます。pom.xml ファイルまたは build. gradle ファイルの新しい依存関係がクラスパスに追加されます。新機能がインストールされ、起動している。

特定の設定ディレクトリーやファイルの追加など、一部の変更は、dev モードを再起動するまで反映されません。これらの変更を有効にするには、プロンプトが表示されたら dev モードを再起動します。再起動するには、最初に CTRL+C を押して、q を入力して Enter を押して、最初に dev モードを終了します。次に、mvn liberty:dev コマンドまたは gradle libertyDev コマンドを実行して 再起動します。サーバーの再起動後、変更は稼働中のサーバーによって検出、再コンパイル、および選択されます。

dev モードの開始時にパラメーターを指定すると、dev モードがコードへの変更を処理する方法を設定できます。設定パラメーターの詳細は、Open Liberty Maven プラグインの dev ゴールまたは Open Liberty Gradle プラグイン の libertyDev タスクを参照して ください。

7.1.2. オンデマンドでユニットと統合テストの実行

dev モードが実行しているコマンドウィンドウで Enter を押して、ユニットおよび統合テストをオンデマンドで実行できます。dev モードは、プロジェクトに設定されたユニットテストおよび統合テストを実行します。テストをプロジェクトに追加する場合、dev モードがコンパイルされ、次にテストを実行するときにこれが含まれます。

dev モードがホットテストを実行するように設定することで、変更に関するフィードバックを即座に受け取ることができます。ホットテストとは、dev モードを起動するか、コード変更を行うたびに自動実行されるユニットまたは統合テストです。ホットテストを設定するには、以下の例のように、dev モードの開始時にホットテストパラメーターを指定します。

Maven: mvn liberty:dev -DhotTests

gradle: gradle libertyDev --hotTests

また、パラメーターを追加して、テストをスキップするかどうかを指定することも可能です。Maven では、パラメーターを追加してユニットテストをスキップしたり、統合テストをスキップしたり、すべてのテストをスキップしたりできます。Gradle の場合は、パラメーターを追加してすべてのテストをスキップできます。設定パラメーターの詳細は、Open Liberty Maven プラグインの dev ゴールまたは Open Liberty Gradle プラグイン の libertyDev タスクを参照して ください。

7.1.3. 実行中のサーバーにデバッガーを割り当てます。

実行中のサーバーにデバッガーを割り当て、いつでもコードを追跡できます。ソースコードにブレークポイントを指定して、アプリケーションの異なる部分をローカルでデバッグできます。デバッグのデフォルトポートは 7777 です。デフォルトのポートが利用できない場合、dev モードはデバッグ用のポートとして使用するランダムポートを選択します。

7.1.4. dev モードの VS Code 拡張

Open Liberty Tools VS Code 拡張 を使用すると、dev モードを起動し、動的コードの変更、テストの実行、およびデバッグを行うことができます。すべての VS Code エディターを終了します。エクステンションをインストールし、Maven または Gradle プラグインのいずれかをインストールしたら、VS Code サイドバーの Liberty Dev Dashboard でプロジェクトを選択できます。プロジェクト名を右クリックし、メニューからコマンドを選択して、dev モード機能にアクセスできます。