必须从指定的JAR文件中检索所有应用程序资源 在JNLP文件的resources部分中,或显式检索 使用HTTP请求到Web服务器。
建议在JAR文件中存储资源,因为它们将被缓存 在Java Web Start的本地机器上。
现在,我有一些资源,我想在我的应用程序启动后动态加载(例如OSGi包)。我可以使用普通的HTTP做到这一点,但我想利用Web Start对本地缓存和版本化/体系结构特定资源的支持。
有没有办法使用Web Start基础架构从原始代码库(在应用程序的jnlp文件中指定)下载其他jar文件?
或者可选:是否已经建立了集成OSGi和Web Start的方法,这将减轻我从Web Start服务器安装捆绑包的任务?
答案 0 :(得分:4)
如果您将自己的应用程序本身设置为基于Equinox的OSGI应用程序,则可以使用所需的所有附加软件包进行Web启动。
本文“WebStarting Equinox OSGi Apps”可以为您提供所需设置的详细介绍。
- 所有捆绑包都必须部署为签名的JAR文件
- 您需要一个包含所有必要包的功能
- 导出功能时,请确保PDE为此功能创建JNLP(Java网络启动协议)文件(导出向导中的复选框)
- 为您的应用程序提供根JNLP文件
- 将您的应用程序部署到Web服务器并确保Web服务器知道application / x-java-jnlp-file mime type
他还有OSGI demo。
答案 1 :(得分:1)
我没有尝试过,但请查看javax.jnlp.DownloadService API