我是OSGI的新手,我刚刚修改了实施主机和消费者服务包并检查它们是如何工作的.Bundles现在处于活动状态。但是我有另一个应用程序不是OSGI类型的应用程序。它是一个标准Java Application.Now我的困惑是,
我可以了解到,通常可以通过获取引用来在Activator的Start方法中访问服务。但是在服务成功启动后,Start事件不会再次触发。 那么这次我们如何在bundle处于Active状态时显式调用Services?当我们创建OSGI Project时,Eclipse会自动创建以下静态引用和静态getContext()方法。我应该使用这个静态getContext()来实现我的目标?
Eclipse自动创建代码
private static BundleContext context;
static BundleContext getContext()
{
return context;
}
public void start(BundleContext bundleContext) throws Exception
{
Activator.context = bundleContext;
}