2013-12-12 105 views
1

从java7u21升级到java7u45后,出现了很多与安全相关的更改。java web start应用程序无法在java7u45上启动

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

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

将属性添加到MANIFEST文件并重新对它们进行重新签名。
现在,当我启动使用我的JNLP文件的应用程序,它提供了在这个特别的罐子

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) 

验证清单文件这个罐子缺少的属性如下错误并重新签署。但同样的错误。

任何指针?

+0

这是.jar库文件还是主应用程序.jar? – ryvantage

+0

对不起,延迟的答复很多。这个.jar是eclipse库文件。 – holmes840

+0

@优势 - 我明白了。这个'org.eclipse * .jar'和一些其他的eclipse jar文件在META-INF /目录下有它们自己的签名文件(ECLIPSEF.SF)。由于这个额外的SF文件仍然具有之前MANIFEST主属性的** SHA-DIGEST **(现已更改)**,因此该插件未能加载。我从所有插件中删除了这些和其他签名文件,并用我自己的证书重新签名。 – holmes840

回答

0

org.eclipse*.jar和其他一些日食jar文件必须在META-INF/目录自己的签名文件(ECLIPSEF.SF)

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

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

相关问题