5.3. ランタイムプロファイルの操作
Red Hat Fuse Tooling は、各プロジェクトのランタイム環境に関する情報を ランタイムプロファイル に保存します。ランタイムプロファイルは、呼び出す Maven の目標、使用する Java ランタイム環境、設定する必要のあるシステム変数などの情報を追跡します。プロジェクトには、複数のランタイムプロファイルを含めることができます。
5.3.1. ローカル Camel コンテキストランタイムプロファイルの編集
概要
Local Camel Context ランタイムプロファイルは、ルートを実行するために Apache Camel を呼び出す方法を設定します。Local Camel Context ランタイムプロファイルは、ルートが定義されているコンテキストファイルの名前、呼び出す main
の名前、JVM に渡すコマンドラインオプション、使用する JRE、使用するクラスパス、設定する必要のある環境変数、その他の情報などを保存します。
Local Camel Context ランタイムプロファイルのランタイム設定エディターには、次のタブが含まれています。
- Camel Context File — 新しい設定の名前とルートを含むルーティングコンテキストファイルのフルパスを指定します。
- JMX — JMX URI と、それにアクセスするために使用するユーザー名とパスワード (オプション) を含む、JMX 接続の詳細を指定します。
- Main — プロジェクトのベースディレクトリーの完全修飾名、ベースディレクトリーを見つけるためのいくつかのオプション、ルートを実行する前に実行する必要のある目標、使用する Maven ランタイムのバージョンを指定します。
- JRE — JVM の起動時に使用する JRE およびコマンドライン引数を指定します。
- Refresh — 実行が終了した後に Maven がプロジェクトのリソースファイルを更新する方法を指定します。
- Environment — 設定する必要のある環境変数を指定します。
- Common — プロファイルの保存方法と出力の表示方法を指定します。
Apache Camel ルートが Local Camel Context として初めて実行されるとき、Red Hat Fuse Tooling はルーティングコンテキストファイル用に、編集を必要としないデフォルトのランタイムプロファイルを作成します。
Local Camel Context のランタイム設定エディターへのアクセス
- Project Explorer ビューで、カスタムランタイムプロファイルを編集または作成する Camel コンテキストファイルを選択します。
-
それを右クリックしてコンテキストメニューを開き、Run As
Run Configurations を選択して Run Configurations ダイアログボックスを開きます。 - コンテキスト選択 ペインで、Local Camel Context を選択してから、コンテキスト選択 ペインの左上にある をクリックします。
- Name フィールドに、ランタイムプロファイルの新しい名前を入力します。
図5.1 Loca Camel Context のランタイム設定エディター
camel コンテキストファイルの設定
Camel Context File タブには 1 つのフィールド Select Camel Context file… があります。ルート定義を含むルーティングコンテキストファイルへのフルパスを入力します。
Browse ボタンは、Open Resource ダイアログボックスにアクセスします。これにより、ターゲットルーティングコンテキストファイルを簡単に見つけることができます。このダイアログボックスは、Apache Camel ルートを含むファイルを検索するように事前設定されています。
コマンドラインオプションの変更
デフォルトでは、JVM には以下のコマンドラインオプションのみ渡されます。
-fa context-file
カスタムメインクラスを使用している場合は、別のオプションを渡す必要がある場合があります。そうするには、Main タブで Add ボタンをクリックして、パラメーターの名前と値を入力します。Add Parameter ダイアログボックスの Variables… ボタンをクリックして、選択可能な変数のリストを表示できます。
JVM 固有の引数を追加または変更するには、JRE タブの VM arguments フィールドを編集します。
出力の送信先の変更
デフォルトでは、ルートの実行から生成された出力は Console ビューに送信されます。ただし、これをファイルにリダイレクトすることもできます。
出力をファイルにリダイレクトするには、以下を実行します。
- Common タブを選択します。
Standard Input and Output ペインで、Output File: フィールドの横にあるチェックボックスをクリックし、出力送信先のファイルへのパスを入力します。
Workspace ボタン、File System ボタン、および Variables ボタンを使用すると、出力ファイルへのパスを簡単に構築できます。
5.3.2. Maven ランタイムプロファイルの編集
概要
Maven ランタイムプロファイルは、Maven が Apache Camel を呼び出す方法を設定します。Maven ランタイムプロファイルには、実行する Maven 目標、使用する Maven プロファイル、使用する Maven のバージョン、使用する JRE、使用するクラスパス、設定する必要のある環境変数、およびその他のいくつかの情報が格納されています。
Maven を使用して Apache Camel ルートを初めて実行するときは、そのデフォルトランタイムプロファイルを作成する必要があります。
Fuse ランタイムプロファイルのランタイム設定エディターには、次のタブが含まれています。
- Main — 新しい設定の名前、プロジェクトのベースディレクトリーの完全修飾名、ベースディレクトリーを見つけるためのいくつかのオプション、ルートを実行する前に実行する必要のある目標、使用する Maven ランタイムのバージョンを指定します。
- JRE — JVM の起動時に使用する JRE およびコマンドライン引数を指定します。
- Refresh — 実行が終了した後に Maven がプロジェクトのリソースファイルを更新する方法を指定します。
- Source — プロジェクトに必要な追加のソースの場所を指定します。
- Environment — 設定する必要のある環境変数を指定します。
- Common — プロファイルの保存方法と出力の表示方法を指定します。
Maven ランタイム設定エディターへのアクセス
- Project Explorer ビューで、カスタムランタイムプロファイルを編集または作成するプロジェクトのルートを選択します。
-
それを右クリックしてコンテキストメニューを開き、Run As
Run Configurations を選択して Run Configurations ダイアログボックスを開きます。 - コンテキスト選択 ペインで、Maven Build を選択してから、コンテキスト選択 ペインの左上にある をクリックします。
図5.2 Maven のランタイム設定エディター
Maven ゴールの変更
ルートを実行するときに最も一般的に使用されるゴールは、camel:run です。これは、独自の JVM で実行されている Spring コンテナーにルートをロードします。
Apache Camel プラグインは、Maven が使用するのと同じ JVM に Spring コンテナーをロードする camel:embedded ゴールもサポートしています。これの利点は、ルートのブートストラップが速くなることです。
Java DSL に基づくプロジェクトは、exec:java ゴールを使用します。
POM に他のゴールが含まれる場合、Main タブの Maven Runtime フィールドの横にある Configure… ボタンをクリックして、使用する Maven ゴールを変更できます。Installations ダイアログボックスで、Global settings for <selected_runtime> installation フィールドを編集します。
Maven バージョンの変更
デフォルトでは、Red Hat Fuse Tooling for Eclipse は Eclipse に組み込まれている m2e を使用します。別の Maven バージョンを使用する場合、または開発マシンに新しいバージョンをインストールする場合は、Main タブの Maven Runtime ドロップダウンメニューから選択できます。
出力送信先の変更
デフォルトでは、ルート実行からの出力は Console ビューに送信されます。ただし、これをファイルにリダイレクトすることもできます。
出力をファイルにリダイレクトするには、以下を実行します。
- Common タブを選択します。
Output File: フィールドの横にあるチェックボックスをクリックして、出力を送信するファイルへのパスを入力します。
Workspace ボタン、File System ボタン、および Variables ボタンを使用すると、出力ファイルへのパスを簡単に構築できます。