实现JavaFX应用程序自动更新功能

Cla*_*lma 16 java javafx auto-update javafx-8

我即将编写一个新的跨平台应用程序,我选择JavaFX,主要是因为它丰富的UI库(标准和第三方)和它的本机数据绑定功能.我的应用程序将通过本机打包部署,因为缺少PPAPI Java插件(Chrome将停止Chrome 42中的NPAPI,现在处于测试阶段),这会阻止Chrome用户使用WebStart,并且因为更"经典"用户体验,因此WebStart和自动更新不在桌面上.

方案如下:

  1. 应用程序启动并检查更新
  2. 如果找到更新,请下载它们并将它们放在临时文件夹中
  3. 在应用程序关闭时,将新下载的JAR文件写入旧文件
  4. 自动重启更新的应用程序

然而,在我的脑海中出现了一些问题(最初这两个问题,但我可以在我有更多时更新这个问题):

  • 这样做是否安全?如果我覆盖应用程序生命周期中已经使用过的一些JAR,我是否冒险以某种方式让JVM变得疯狂?
  • 我很难找到一种方法来自动重启我的JavaFX应用程序.它甚至可能吗?

谢谢大家的帮助.

keu*_*leJ 5

看看GetDownUpdateFX.它实现了一个引导下载程序,可以检查更新,下载它们并在应用程序更新后立即启动它

  • 感谢您的建议。不幸的是,似乎 GetDown 和 UpdateFX 都无法满足我的需求: - UpdateFX:似乎它需要将应用程序放在一个 JAR 中,而我有一些库,我想将其作为单独的 JAR 随身携带;- GetDown:它看起来非常面向 Swing,我想保留一个纯 JavaFX 课程。 (2认同)