【发布时间】:2012-06-11 11:44:31
【问题描述】:
我的应用程序从属性文件中获取类名。由这些类名表示的类可能驻留在预先未知的某些 OSGI 包中,因此为了实例化它们,我首先必须找到这些类属于哪个包。我正在考虑从 BundleContext#getBundles 获取所有已安装的包,这意味着我必须在 AbstractUIPlugin#start 中获取对 BundleContext 的引用。但我不确定持有对 BundleContext 的引用是否正确,因为它应该只在 start 方法中使用。所以我在这里需要 OSGI 专家的建议,了解获取捆绑包列表的替代方法。
任何帮助将不胜感激。
问候,
塞提亚
【问题讨论】:
-
为什么要在 OSGi 中实例化类?将它们声明为服务并让 Equinox 处理它们的生命周期。你有这样做的具体理由吗?