Java Web Start“无法找到URL的缓存资源”

在Windows 7和8下使用JRE 7更新21(在这两种情况下都是32位),我遇到错误Cannot find cached resource for URL yyyyyyyyyyy.jar用于在更新21之前在JRE中工作的JWS应用程序。如果我尝试下载yyyyyyyyyy.jar将它放入浏览器,它工作正常。 它是我的JNLP文件中的“主”jar文件。

实际问题可能在于您的Web服务器发送带有“no-store”值的HTTP标头“Cache-Control”以避免缓存。 但是,通过指定“no-store”,这意味着JWS无法存储JNLP文件中指定的资源。

为了避免此问题而不必禁用“在我的计算机上保留临时文件”,因为这允许应用程序在脱机模式下工作,我更新了我的Apache Web服务器配置以发送以下内容以禁用缓存内容的中间代理:

 Header set Cache-Control "no-cache, must-revalidate, max-age=0" Header set Pragma "no-cache" 

我的解决方案是在Java控制面板 – >常规 – >临时文件设置中:

  • 单击“删除文件…”并选择所有选项。
  • 禁用“在我的计算机上保留临时文件”。

有一个video显示了这些步骤: https : //www.youtube.com/watch?v = uI9RbmT9PKs

“点击”删除文件…“并选择所有选项。” 只是,再次调用Web Start Resource(.jnlp / JNLP文件),否则你必须一次又一次地下载所有文件。

从Java 7升级到Java 8以解决此问题。