使用 Web Start / JNLP 动态加载其他 jar 文件

发布于 2024-07-15 01:38:04 字数 599 浏览 7 评论 0原文

Web Start 开发人员指南状态

所有应用程序资源必须从指定的 JAR 文件中检索 在 JNLP 文件的资源部分中,或显式检索 使用 HTTP 请求到 Web 服务器。

建议将资源存储在 JAR 文件中,因为它们会被缓存 通过 Java Web Start 在本地计算机上。

现在,我想在应用程序启动后动态加载一些资源(例如 OSGi 包)。 我可以使用纯 HTTP 来完成此操作,但我想利用 Web Start 对本地缓存和版本化/体系结构特定资源的支持。

有没有办法使用 Web Start 基础结构从原始代码库(如应用程序的 jnlp 文件中指定)下载其他 jar 文件?

或者:是否已经有一种集成 OSGi 和 Web Start 的既定方法,可以让我摆脱从 Web Start 服务器安装捆绑包的任务?

The Web Start Developers Guide states

All application resources must be retrieved from the JAR files specified
in the resources section of the JNLP file, or retrieved explicitly
using an HTTP request to the Web server.

Storing resources in JAR files is recommended, since they will be cached
on the local machine by Java Web Start.

Now, I have some resources I want to dynamically load after my application has been started (for example OSGi bundles). I can do this using plain HTTP, but I would like to make use of Web Start's support for local caching and versioned/architecture-specific resources.

Is there a way to download additional jar files from the original code base (as specified in the application's jnlp file) using the Web Start infrastructure?

Or alternatively: is there already an established way to integrate OSGi and Web Start that would relieve me of the task to install bundles from the Web Start server?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

淡莣 2024-07-22 01:38:04

如果您将应用程序本身设置为基于 Equinox 的 OSGI 应用程序,则可以使用所需的所有附加捆绑包通过 Web 启动它。

这篇文章“WebStarting Equinox OSGi Apps”可以给你一个很好的介绍上所需的设置。

  • 所有捆绑包都必须部署为签名的 JAR 文件
  • 您需要一个包含所有必要捆绑包的功能
  • 导出功能时,请确保 PDE 为此功能创建 JNLP(Java 网络启动协议)文件(导出向导中的复选框)
  • 为您的应用提供根 JNLP 文件
  • 将您的应用程序部署到 Web 服务器,并确保 Web 服务器识别 application/x-java-jnlp-file mime 类型

他还有一个 OSGI 演示

If you make your application in itself an Equinox-based OSGI application, you can web-start it with all the addition bundles you need.

This article "WebStarting Equinox OSGi Apps" can give you a good introduction on the required settings.

  • All bundles have to be deployed as signed JAR files
  • You need a feature that contains all the necessary bundles
  • When exporting the feature, make sure that PDE creates a JNLP (Java Network Lauching Protocol) file (a checkbox in the export wizard) for this feature
  • Provide a root JNLP file for you application
  • Deploy your application to a web server and make sure that the web server is aware of the application/x-java-jnlp-file mime type

He also has an OSGI demo.

寂寞陪衬 2024-07-22 01:38:04

我还没有尝试过,但看看 javax.jnlp.DownloadService API

I haven't tried it but look at the javax.jnlp.DownloadService API

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文