リフレクションライブラリなどの依存関係がある通常のmaven jarプロジェクトがあり、それをosgiに変換したいと思っています。
- 別の (maven) jar プロジェクトに共通のインターフェイス レイヤーを作成し、依存関係としてバンドルに追加しました。
- osgi-module-to-be のタイプを「bundle」に変更しました。
- BundleActivator の実装を作成しました
- このプラグインを pom に追加しました:
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>2.3.7</version>
<extensions>true</extensions>
<configuration>
<instructions>
<Bundle-Activator>my.package.MyServiceActivator</Bundle-Activator>
<Export-Package>
my.package.exp.*
</Export-Package>
<Import-Package>
!org.reflections,???
</Import-Package>
<Embed-Dependency>
slf4j-api;scope=compile,???
</Embed-Dependency>
</instructions>
</configuration>
ここで迷子になります。"Import-Package" と "Embed-Dependency" を把握する必要があります。さらに重要なのは、それを zip または ORB (または Gogo) として GlassFish にデプロイする方法を把握することです。すべての依存関係の jar と共にデプロイされます。
何か案は?
G.
ところで: org.reflections パッケージは OSGi 対応ではありません