1

まず第一に、私は OSGI の初心者です :-)

JBoss EAP 6.1 で OSGI アプリケーションをビルドしようとしています。しかし、現在、OSGI サードパーティ ライブラリに問題があります。

次のパッケージ「javax.enterprise.context」が必要です。そのため、「weld-osgi-bundle-1.2.0.Beta1.jar」をデプロイメント フォルダーに追加しました。アプリケーションを起動すると、パッケージ「javax.interceptor」が利用できないというエラーが表示されました。したがって、次の構成を構成 xml に追加しました。

<capability name="javax.inject.api"/>
<capability name="javax.interceptor.api"/>

次に、パッケージ「org.jboss.weld.environment.osgi.api.annotation」が必要だったので、「weld-osgi-core-extension-1.2.0.Beta1.jar」をデプロイメントフォルダーに追加しました。しかし、パッケージ「ch.qos.logback.classic」が利用できないというエラーが表示されました....

私の質問は、jboss osgi でサードパーティのライブラリに依存する最良の方法は何ですか? 「通常の」ear ファイルでは、すべてがその ear 内にパッケージ化されていますが、osgi バンドルでこれを行う方法はありますか?

ありがとう!

4

1 に答える 1

0

依存関係を OSGi バンドル内に埋め込むことができます。Bundle-ClassPathマニフェスト エントリを見てください。バンドルの依存関係の管理については、 OBRも参照してください。

最後に、このトピックに関する同様の投稿をお読みください

于 2013-05-30T20:04:35.313 に答える