【问题标题】:java web start application unable to launch on java7u45java web start 应用程序无法在 java7u45 上启动
【发布时间】:2013-12-12 12:16:17
【问题描述】:

从 java7u21 升级到 java7u45 后,做了很多安全相关的改动。

所以首先有与清单文件中缺少属性有关的警告。按照之前提供的 solution 修复它。

Permissions: all-permissions  
Codebase: *  
Application-Name: My Name

将属性添加到 MANIFEST 文件并重新签名。
现在,当我使用我的 jnlp 文件启动应用程序时,它会在这个特定的 jar 上给出以下错误

Error: Unable to load resource 
http://<path>/org.eclipse.core.filesystem.win32.x86_<version>.jar
java.io.IOException: Invalid signature file digest for Manifest main attributes
    at com.sun.deploy.cache.CacheEntry$10.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at com.sun.deploy.cache.CacheEntry.writeFileToDisk(Unknown Source)
    at com.sun.deploy.cache.CacheEntry.writeFileToDisk(Unknown Source)
    at com.sun.deploy.cache.Cache.downloadResourceToTempFile(Unknown Source)
    at com.sun.deploy.cache.Cache.downloadResourceToCache(Unknown Source)
    at com.sun.deploy.net.DownloadEngine.actionDownload(Unknown Source)
    at com.sun.deploy.net.DownloadEngine.downloadResource(Unknown Source)
    at com.sun.deploy.cache.ResourceProviderImpl.getResource(Unknown Source)
    at com.sun.deploy.cache.ResourceProviderImpl.getResource(Unknown Source)
    at com.sun.javaws.LaunchDownload$DownloadTask.call(Unknown Source)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)

验证此 jar 的清单文件是否缺少属性并再次对其进行签名。但同样的错误。

任何指针?

【问题讨论】:

  • 这个.jar 是库文件还是主应用程序.jar?
  • 很抱歉延迟了这么多的响应。这个 .jar 是 eclipse 库文件。
  • @ryvantage - 我想通了。这个org.eclipse*.jar 和其他一些 Eclipse jar 文件在 META-INF/ 目录中有自己的签名文件 (ECLIPSEF.SF)。由于这个额外的 SF 文件仍然具有先前 MANIFEST 主要属性的 SHA-DIGEST(现已更改),因此插件无法加载。我从所有插件中删除了这些和其他签名文件,并用我自己的证书重新签名。

标签: java java-7 java-web-start jnlp


【解决方案1】:

这个org.eclipse*.jar 和其他一些eclipse jar 文件在META-INF/ 目录中有自己的签名文件(ECLIPSEF.SF)

由于这个额外的 SF 文件仍然具有以前 MANIFEST 主要属性的 SHA-DIGEST(现已更改),因此插件无法加载。

从所有插件中删除这些和其他签名文件并重新签名。 :-)

【讨论】:

    猜你喜欢
    • 2010-12-27
    • 2012-10-06
    • 1970-01-01
    • 2013-04-05
    • 2014-05-07
    • 2016-09-11
    • 1970-01-01
    • 1970-01-01
    • 2023-01-13
    相关资源
    最近更新 更多