私は OSGi enRoute と BndTool のアプリ実装のコンセプトに興味をそそられます。しかし、Blueprint Gemini を使おうとして行き詰まりました。誰か助けてください。
質問
Blueprint Gemini 2.0.0 で BndTools ベースの OSGi アプリを実行するには?
私の問題
- BndTools ベースの OSGi アプリケーションで Blueprint Gemini 2.0.0 を使用したいと考えています。しかし、OSGi バンドルが解決されません。
- 自動解決しようとすると、次のエラー メッセージが表示されます。
不足している要件 &(osgi.extender=osgi.blueprint)(version=[1.0.0,2.0.0))
- バンドルにバージョン <=1.0.0 および <2.0.0 が必要なのはなぜですか? これは私のプロジェクトの構成ファイルで指定されていません (*.bnd ファイルでも *.bndrun ファイルでもありません)?
プロジェクトのセットアップと構成方法
- BndTools 3.3 を使用して、Eclipse Neon で新しい「Bnd OSGi Project」を作成し、「OSGi enRoute 3.3.0」をプロジェクト テンプレートとして選択しました。
OSGi フレームワーク: org.eclipse.osgi;version='[3.10...]
プロジェクト名には接尾辞「アプリケーション」が選ばれました。*その後、blueprint.xml を追加しました。
*.bndrun ファイルに、「実行要件」として 2 つのバンドルを追加しました。
- 私のバンドルと
- org.eclipse.gemini.blueprint.extender. *.bndrun ファイルで、「実行要件」として 2 つのバンドルを追加しました: my bundle と org.eclipse.gemini.blueprint.extender: blueprint.extender バンドルは、次の Maven XML 構文を使用してセントラル リポジトリに追加されました。
<dependency> <groupId>org.eclipse.gemini.blueprint</groupId> <artifactId>gemini-blueprintextender</artifactId> <version>2.0.0.RELEASE</version> </dependency>