如何制作使用其他捆绑方法的OSGi包?

时间:2017-02-15 00:19:37

标签: osgi-bundle

我有一个预先创建的捆绑“A”,其中包含一些方法(注册为服务)。现在我想创建另一个使用“A”方法的“B”包。据我了解,我应该从包含“B”激活器中的那些方法的类中getServiceReference()。但是我怎样才能访问这些课程?我应该用“A”作为库导入项目还是将.jar文件导入“B”项目?我正在阅读“OSGI在行动中”,但在那里找不到明确的答案。请你回答或建议一些有助于找到答案的文章 附:我使用Inteleji IDEA IDE。

1 个答案:

答案 0 :(得分:0)

捆绑包A应该导出A类所在的包,这是通过添加" Export-Package"字段到清单。

捆绑包B应该导入A类所在的包,这是通过添加" Import-Package"字段到清单。

捆绑A应该将A注册为服务。

B组应该从A获得服务,然后它可以调用A类的方法。

根据您用于编译的工具(gradle / maven,bnd工具......),导出和导入包可以自动生成"。

根据您在运行时使用的工具(蓝图,iPOJO,ds,...),注册和注入服务可以自动生成"。

相关问题