[英]Where is the jar files cached for Java Web Start/JNLP applications?
[英]Dynamically load additional jar files using Web Start / JNLP
所有應用程序資源必須從 JNLP 文件的資源部分中指定的 JAR 文件中檢索,或者使用對 Web 服務器的 HTTP 請求顯式檢索。
建議將資源存儲在 JAR 文件中,因為它們會被緩存在本地機器上,由 Java Web 啟動。
現在,我想要在我的應用程序啟動后動態加載一些資源(例如 OSGi 包)。 我可以使用普通的 HTTP 來做到這一點,但我想利用 Web Start 對本地緩存和版本化/架構特定資源的支持。
有沒有辦法使用 Web Start 基礎設施從原始代碼庫(在應用程序的 jnlp 文件中指定)下載額外的 jar 文件?
或者:是否已經有一種整合 OSGi 和 Web Start 的既定方法可以減輕我從 Web Start 服務器安裝捆綁包的任務?
如果您使您的應用程序本身成為基於 Equinox 的 OSGI 應用程序,您可以使用所需的所有附加包啟動它。
這篇文章“ WebStarting Equinox OSGi Apps ”可以很好地介紹所需的設置。
- 所有捆綁包都必須部署為簽名的 JAR 文件
- 您需要一個包含所有必要捆綁包的功能
- 導出功能時,確保 PDE 為該功能創建 JNLP(Java 網絡啟動協議)文件(導出向導中的復選框)
- 為您的應用程序提供根 JNLP 文件
- 將您的應用程序部署到 web 服務器並確保 web 服務器知道 application/x-java-jnlp-file mime 類型
他還有一個OSGI 演示。
我沒試過,但看看javax.jnlp.DownloadService API
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.