我有一个大型 Java 应用程序,由于历史原因,它被开发为小程序(在 Web 浏览器内运行)。
现在我们有兴趣将其部署为与 JRE 捆绑在一起的独立应用程序,exe4j 看起来很有前途。
然而,有一个棘手的部分:当前的小程序的代码库存储在本地 Web 服务器上,因此任何时候用户在远程 PC 上运行该小程序时,它都会从服务器下载 jar,因此始终运行最新版本。
如果需要更新,我们的工程师只需更新服务器上的 jar 并在远程 PC 上重新启动小程序。
这是我们需要保留的东西。
如果我将小程序更改为独立的 Java 应用程序 - 我知道如何使用 JNLP 和 Web Start 运行它以保持此“自动更新”功能
但是是否可以使用此 JNLP 作为 exe4j 的起点 - 我无法弄清楚。
因此最终结果应该是:捆绑了 jre 和我的应用程序的 exe 文件(可能带有 jre 等附属目录),它根据服务器上的代码检查自身,并在运行前根据需要更新自身。
最佳答案
But is it possible to use this JNLP as a starting point for exe4j - this I can't figure out.
是和否。 JWS 提供了一个“扩展安装程序”元素,该元素将在第一次应用程序时触发。安装时以及通过 Java 控制面板卸载时。但 JWS 会期望“运行一次”安装程序不需要它擅长的自动更新类型,因此在更改时不会更新它。
另一方面,要使 JWS 正常工作,必须存在 JRE,因此我看不出使用 exe4j 或捆绑 JRE 的优势。
关于java - 如何将 WebStart JNLP 与 JRE 捆绑在一起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34858513/