我必须在父应用程序和嵌入的OSGi之间传递参数。我在我的Launcher类中使用equinox并通过FrameworkFactory运行OSGi,然后我安装并启动bundle。可以将对象引用甚至一些原始类型传递给bundle或service吗?
答案 0 :(得分:2)
启动框架后,您可以获取系统包上下文以及框架中bundle注册的访问和调用服务。必须注意服务类型,因为可能是从包中加载的,因此启动代码不会直接看到类型。但你可以使用反射。或者您可以将这些类型放在框架类加载器中,并通过启动器设置的org.osgi.framework.system.packages.extra框架属性从系统包中导出它们。