2012-08-29 18 views
0

我在我的web应用程序中使用浏览器代理来模拟代理服务器。执行MVN清洁包后,当我执行的jar我得到的错误如下:browser-mob proxy - java.lang.SecurityException当执行由maven打包的jar

Exception in thread "main" java.lang.SecurityException: no manifiest section for signature file entry org/bouncycastle/asn1/ocsp/ResponderID.class 
at sun.security.util.SignatureFileVerifier.verifySection(SignatureFileVerifier.java:399) 
at sun.security.util.SignatureFileVerifier.processImpl(SignatureFileVerifier.java:250) 
at sun.security.util.SignatureFileVerifier.process(SignatureFileVerifier.java:193) 
at java.util.jar.JarVerifier.processEntry(JarVerifier.java:305) 
at java.util.jar.JarVerifier.update(JarVerifier.java:216) 
at java.util.jar.JarFile.initializeVerifier(JarFile.java:341) 
at java.util.jar.JarFile.getInputStream(JarFile.java:406) 
at sun.misc.URLClassPath$JarLoader$2.getInputStream(URLClassPath.java:752) 
at sun.misc.Resource.cachedInputStream(Resource.java:77) 
at sun.misc.Resource.getByteBuffer(Resource.java:160) 
at java.net.URLClassLoader.defineClass(URLClassLoader.java:436) 
at java.net.URLClassLoader.access$100(URLClassLoader.java:71) 
at java.net.URLClassLoader$1.run(URLClassLoader.java:361) 
at java.net.URLClassLoader$1.run(URLClassLoader.java:355) 
at java.security.AccessController.doPrivileged(Native Method) 
at java.net.URLClassLoader.findClass(URLClassLoader.java:354) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:423) 
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:356) 
at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:472) 

的META-INF文件夹不具有同时建立我的罐子我可以排除任何签名证书。

回答

1

我在ic4u软件包中遇到安全问题。我只是排除它的形式依赖和一切正常。

<dependency> 
    <groupId>biz.neustar</groupId> 
    <artifactId>browsermob-proxy</artifactId> 
    <version>${browser-mob-version}</version> 
    <exclusions> 
    <exclusion> 
     <groupId>org.seleniumhq.selenium</groupId> 
     <artifactId>selenium-api</artifactId> 
    </exclusion> 
    <exclusion> 
     <artifactId>icu4j</artifactId> 
     <groupId>com.ibm.icu</groupId> 
    </exclusion> 
    </exclusions> 
</dependency> 
1

我记得有一些类似的问题bouncycastle类。

我的问题是由“ueber-jar”(在我的情况下是apache-ds-all)引起的,它不仅包含来自apache-ds项目的类,而且还包含来自apache-ds第三方依赖项的所有类。

因为bouncycastle类最初是在签名的jar文件中发布的,所以当从不同位置加载的类时(这是首先对JAR签名的完整点),我得到安全异常。

我建议扫描类路径中的所有JAR文件,看看org/bouncycastle/asn1/ocsp/ResponderID.class是否包含在非bouncycastle分发jar文件中。

希望有帮助!

+0

谢谢你的答案,但在我的情况下,我有一个类似的问题在不同的包中,但这确实有助于朝正确的方向发展。 – Panshul

+0

很高兴我能帮到你 –

0

我有完全一样的问题,iText的4.2.0和BouncyCastle的库(与ResponderID和其他类SecurityExceptions)。

我最终删除了iText附带的带签名jar包中的META-INF目录。这可能不是最优雅的方式,但至少它解决了我的问题。

相关问题