我们有一个运行java web start的应用程序。它运行良好,并通过HTML链接启动到JNLP。
但是,我们需要每天多次启动此应用。有没有办法在我们想要启动它的时候不下载它?我虽然会将其放入缓存中,以便仅在第一次或更新后下载。
答案 0 :(得分:2)
在JNLP文件中包含offline-allowed
选项。
我引用documentation(我强调的相关部分):
offline-allowed元素:可选的offline-allowed元素指示应用程序是否可以脱机启动。
如果指定了offline-allowed,则可以通过Java Application Cache Viewer离线启动应用程序,并可以创建启动应用程序脱机的快捷方式。
如果应用程序是脱机启动的,则不会检查更新,API调用BasicService.isOffline()将返回true。
offline-allowed元素还控制Java Web Start检查应用程序更新的方式。 如果未指定元素 -i.e。,则应用程序必须联机才能运行 - Java Web Start将始终在启动应用程序之前检查更新版本。如果找到更新,将下载并启动新应用程序。因此,保证用户始终运行最新版本的应用程序。但是,该应用程序必须在线运行。
如果指定了offline-allowed,Java Web Start还将检查是否有可用的更新。但是,如果已经下载了应用程序,则检查将在几秒钟后超时,在这种情况下,将启动缓存的应用程序。如果服务器连接速度相当快,通常会运行最新版本的应用程序,但不能保证。但是,该应用程序可以脱机运行。