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

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

我上面做了两个原因:

  1. 我不希望客户端在任何更新的情况下重启应用程序
  2. 由于应用程序仍然是新的,我不想在用户无法运行或更新应用程序时遇到任何问题,因此Base非常小并且几乎没有错误。

是否有一个常见的Java方法/第三方来进行自动更新?

===============>>#1 票数:6

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

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

===============>>#2 票数:0

您可以尝试使用OSGi。

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

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

Apache Felix

  ask by aymankoo translate from so

未解决问题?本站智能推荐:

2回复

自动将Java应用程序更新为Windows可安装的

关于这一点,我发现了很多讨论,但是谈到从jar运行的Java程序(在这种情况下,很容易替换它)或C#应用程序(我不了解C#)。 我使用工具(install4j,..)从Java swing应用程序的jar中为Windows生成了可安装文件。 我在Windows上安装并运行的产品应该能够自
2回复

如何在Java中实现自动更新?

全部:我在这里遇到问题,我的应用程序由一些jar文件和其他一些文件组成,它们都位于一个目录中。 我正计划实现自动更新功能。 当应用程序知道服务器上有新版本时,它将下载一个zip文件到temp目录。 下载后,它将询问客户是否要安装它。 如果是,我的应用程序将退出,我需要解压缩该zip文件并
5回复

如何使Java应用程序自我更新?

问题 :我有一个独立的Java应用程序(以下称为“代理”),它作为内部公司服务器上的服务运行。 它充当某些中央服务器的远程代理。 随着代理部署在更多地方,管理它们变得越来越复杂。 具体来说:推送更新很痛苦,因为它是一个相当手动的过程,并且访问日志和有关运行代理的环境的其他信息是有问题的,这
2回复

如何在启动期间自动升级Java应用程序?

我在几台机器上部署了一个Java 1.6应用程序(~30),并作为Windows服务启动。 我的主要问题是维护这些部署的工件:如果我开发了这个应用程序的新版本,我不想在每台机器上手动重新部署它。 理想情况下,当Windows服务启动时,它会检查远程服务器是否存在更新,如果找到,则会升
3回复

如何在运行时更新Java应用程序库?

是否可以在运行时更新Swing应用程序使用的jar文件/库?
1回复

如何在Java中检查程序的更新

我想知道如何让我的Java游戏在按下按钮时自动检查更新,我有一个ActionListener调用我的UpdateGUI类: 然后从这里开始,我已经对GUI进行了排序(标签,按钮等),但这只是更新检查器,我还想帮助使标签在可用更新时出现。 在我提出这个问题时,我尝试浏览提供给我的各种
1回复

用java更新java?

我环顾四周,无法在任何地方找到它,但有没有办法通过Java应用程序更新JRE,然后使用新的JRE重新启动所述应用程序?
1回复

在客户端上管理应用程序版本的工具/框架

我们有一个Java应用程序,它大致由无接口服务和Web应用程序组成。 随着我们应用程序已安装实例数量的增加,我们感到迫切需要管理在哪个客户端上安装了什么版本,并且如果可能的话,可以自动执行更新过程,特别是错误修复更新。 是否有人对工具或框架甚至最佳实践文章有建议,可能会对我们有所帮助
1回复

如何从Swing代码获取任何应用程序的根安装目录?

我正在为应用程序设计补丁程序安装程序。 安装程序的第一页(欢迎页面之后)要求输入已安装应用程序的根目录,并提供了一个“浏览”按钮供用户选择根目录。 但是,为了简化此过程,我希望安装程序智能地找到根安装程序目录,并将其设置为文本字段中的默认目录,而不是将其保留为空白 (正如我在许多安装程序中所
1回复

为用户更新Java Applet

我很难在不让用户经历更新其Java版本麻烦的情况下,找到一种更新我的applet的方法。 有没有办法做到这一点? 以下是我正在使用的applet: <tr align="left"> <td height="34" colspan="2"><div align