第5章 OSGi バンドルの構築

概要

この章では、Maven を使用して OSGi バンドルを構築する方法について説明します。バンドルを構築する場合に、Maven バンドルプラグインは、OSGi バンドルヘッダーの生成を自動化できるため、重要なロールを果たします (そうでない場合は面倒な作業になります)。完全なサンプルプロジェクトを生成する Maven アーキタイプは、バンドルプロジェクトの開始点として使用することもできます。

5.1. バンドルプロジェクトの生成

5.1.1. Maven アーキタイプを使用したバンドルプロジェクトの生成

すばやく開始できるように、Maven アーキタイプを呼び出して、Maven プロジェクトの初期アウトラインを生成できます (Maven アーキタイプはプロジェクトウィザードに類似しています)。次の Maven アーキタイプは、OSGi バンドルを構築するためのプロジェクトを生成します。

5.1.2. Apache Camel アーキタイプ

Apache Camel OSGi アーキタイプは、OSGi コンテナーにデプロイできるルートを構築するためのプロジェクトを作成します。

以下の例は、Maven アーキタイプコマンドに座標 GroupId:ArtifactId:Version を使用して camel-blueprint プロジェクトを生成する方法を表しています。

mvn archetype:generate \
 -DarchetypeGroupId=org.apache.camel.archetypes \
 -DarchetypeArtifactId=camel-archetype-blueprint \
 -DarchetypeVersion=2.23.2.fuse-7_11_1-00015-redhat-00002

このコマンドの実行後、Maven は GroupIdArtifactId、および Version を指定するよう要求します。

5.1.3. バンドルの構築

デフォルトでは、前述のアーキタイプは新しいディレクトリーにプロジェクトを作成します。その名前は、指定されたアーティファクト ID (ArtifactId) と同じです。新規プロジェクトで定義されたバンドルをビルドするには、コマンドプロンプトを開いてプロジェクトディレクトリー (つまり pom.xml ファイルが含まれるディレクトリー) に移動し、以下の Maven コマンドを入力します。

mvn install

このコマンドは、すべての Java ソースファイルをコンパイルし、ArtifactId/target ディレクトリーの下にバンドル JAR を生成した後、ローカルの Maven リポジトリーで生成された JAR をインストールします。