自动更新java应用程序

时间:2013-04-16 03:53:50

标签: java deployment auto-update

我正在构建将从网上免费下载的Java应用程序。我想在修复错误或增强应用程序时添加自动更新功能。对于自动更新,我将程序拆分为3个单位。

  1. Base - 非常小的代码,将检查新版本的第二个单元(Uploader)更新并运行它
  2. 上传者将检查项目的新更新并下载任何更新并运行它
  3. 主程序 - 包含主应用程序并包含所有模块。
  4. 我上面做了两个原因:

    1. 我不希望客户端在发生任何更新时重启应用程序
    2. 由于应用程序仍然是新的,我不希望用户无法运行或更新应用程序,因此Base非常小,几乎没有错误。
    3. 是否有常见的Java方法/第三方进行自动更新?

2 个答案:

答案 0 :(得分:6)

  

Java Web Start(JWS)是Oracle Corporation用于直接从网络或Internet链接启动富客户端(Swing,AWT,SWT)桌面应用程序的技术。它为支持Java的平台提供“一键式”安装。

     

JWS提供了许多吸引人的功能,包括但不限于启动画面,桌面集成,文件关联,自动更新(包括延迟下载和程序化控制更新), 本地人和他人的分区按平台,体系结构或Java版本下载其他资源,运行时环境配置(最低J2SE版本,运行时选项,RAM等),使用扩展轻松管理公共资源..

答案 1 :(得分:0)

您可以尝试使用OSGi。

如果您计划应用程序的正确模块化结构,则更新应用程序模块时可能无需重新启动应用程序。您只需要重新启动模块,这取决于更新的模块。重置相关模块将在应用程序中进行,无需重新启动应用程序。

我更喜欢使用Felix OSGI应用程序。

Apache Felix