Felix如何从更新的包中获取所有依赖包的列表

时间:2012-08-16 12:17:12

标签: java osgi bundle apache-felix

  

可能重复:
  Find the dependent bundles in Eclipse at runtime

如何从更新的捆绑包中获取所有依赖捆绑包的列表? 例如,某些应用程序加载相同的包时的情况。 有一段时间我会更新一个包。 如何获取依赖于更新的捆绑包的所有捆绑包? 这是必要的,以便重新启动依赖于更新的包的所有包,因此他们可以看到更新的包的新对象。 抱歉,我的英语不好。 最好的问候,亚瑟。

2 个答案:

答案 0 :(得分:2)

答案 1 :(得分:0)

如果您看到Find the dependent bundles in Eclipse at runtime

akr写道:

  

没有简单的方法来确定依赖关系。最好的方法是通过PackageAdmin界面。请参阅PackageAdmin的OSGi规范,特别是getImportingBundles:http://www.osgi.org/javadoc/r4v42/org/osgi/service/packageadmin/ExportedPackage.html#getImportingBundles()

     

您需要确定所有已安装的软件包,哪个软件包导出一个或多个软件包>您的软件包正在导入。实现此目的的最简单方法是使用bundles = null调用PackageAdmin.getExportedPackages(Bundle bundle)。这将返回所有导出包的数组>。然后,您需要迭代此数组并调用ExportPackage.getImportingBundles()。