【问题标题】:Updating existing installation using java web start application使用 java web start 应用程序更新现有安装
【发布时间】:2013-08-07 21:42:52
【问题描述】:

我一直在为我的应用程序使用 Java web start,我知道使用 web url 访问应用程序将保证最新版本,但我很想知道是否有任何方法可以强制 java web start 应用程序自动卸载现有版本并在通过快捷方式访问时将应用程序更新到最新版本。

【问题讨论】:

  • 即使通过桌面链接运​​行它也应该更新。您可以发布您的 JNLP 配置文件吗?您最初是如何安装桌面快捷方式的?

标签: java java-web-start jnlp


【解决方案1】:

我认为没有办法做到这一点。由于您使用的是快捷方式,因此您在启动 javaws 时使用的是 JNLP 文件的本地下载副本。您(或您的用户)必须单击站点上的“从 webstart 开始”链接,以确保下载最新的 JNLP,然后可以包含更新应用程序 jar。

我们的 JNLP webstart 应用程序不允许使用快捷方式,这意味着用户必须始终使用网页上的链接来启动我们的应用程序。

【讨论】:

  • 我不认为这是正确的。自从我使用 Web Start 已经有一段时间了,我似乎记得它可以工作;但更具体地说,docs.oracle.com/javase/tutorial/deployment/webstart 非常明确地指出“当应用程序从用户桌面独立运行时,会自动下载对 Java Web Start 应用程序的更新。”
  • @JasonC 我知道我在工作中遇到了这个问题,从现有的 JNLP 开始“离线”并没有下载新的 JNLP 文件,即使它在服务器上可用。也许 web-start 已经发展了,我必须做一些测试。
  • 更新 JNLP 比更新其中引用的档案更难。 “我们的 JNLP webstart 应用程序不允许使用快捷方式” 您可以指定不使用快捷方式的首选项,但不能阻止用户创建快捷方式。 -- 您所说的情况听起来更像是使用不同参数或属性主动生成的 JNLP。放置桌面快捷方式不仅有意义,而且“必须点击网络链接”也更有意义。
【解决方案2】:

您可以使用javaws -uninstall 从缓存中删除所有应用程序。

javaws -uninstall <jnlp-file> 以删除特定应用程序。

【讨论】:

    【解决方案3】:

    应用程序应自动更新自身。如果您想确保只下载新内容,您可以删除缓存(这在出现问题时有时会有所帮助)。 Windows 7下缓存的位置一般在..user\AppData\LocalLow\Sun\Java\Deployment\cache\

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-10-12
      • 2011-04-28
      • 1970-01-01
      • 2023-03-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多