我读过类似的问题,但我仍然没有把所有的东西放在一起。
是否可以(如果是的话)通过Java Web Start启动基于Apache Felix的OSGi桌面应用程序?
我主要担心的是,如果要启用Web Start的更新检查(这是必需的),则必须在JNLP文件中的某处指定包。但我唯一能看到的就是jar资源。但这只会将jar添加到类路径中,而不是将它们作为bundle开始。
有什么想法吗?
答案 0 :(得分:1)
是的,您在JNLP中列出的任何JAR都将简单地放在类路径上。没有办法让Web Start将它们安装为捆绑包,因为Web Start对OSGi一无所知。
您可以使用Web Start启动一个小型启动器应用程序,该应用程序仅包含OSGi框架和某种“管理代理”。然后,管理代理可以使用其他方法(例如OBR)从存储库安装和更新捆绑包。
这种方法还可以帮助您最终完全从Web Start迁移,这将是最好的,因为Web Start已经过时,甚至可能在未来的Java版本中都不支持。