首页 文章

OSGi捆绑共享jar依赖

提问于
浏览
0

我有一个传统的swing应用程序,我需要使用JavaFX功能进行扩展 . 我一直在寻找使用OSGi来做到这一点(目前正在考虑Equinox) .

现有的遗留应用程序依赖于jar文件main.jar . 这个jar包含我创建的任何bundle所需的接口,以扩展功能,例如添加新面板,菜单等

遗留应用程序在完成它的swing任务后,启动OSGi框架,注册实现main.jar中接口的服务,并安装任何bundle .

我试图将这个jar放在bundle中,编译很好,但是从OSGi注册表中检索服务时我得到了ClassCastException .

我不确定的是如何配置框架/包,以便遗留应用程序和osgi包都可以使用main.jar?

1 回答

  • 0

    您需要使用OSGi框架的系统包导出公开需要共享的包 . 你通过传递属性 org.osgi.framework.system.packages.extra 来做到这一点 .

    我前段时间写了一篇关于嵌入OSGi的文章,它涵盖了内部OSGi包和外部Java应用程序之间共享包和服务等方面 .

相关问题