Invalid signature file digest for Manifest

在执行

bin/spark-submit --master spark://192.168.22.110:7077 --class SimpleApp --executor-memory 1g firt_spark.jar README.md hdfs://192.168.22.110:9000/data/sucre/spark/run

命令的时候,出现了一个问题

Exception in thread "main" java.lang.SecurityException: Invalid signature file digest for Manifest main attributes
    at sun.security.util.SignatureFileVerifier.processImpl(SignatureFileVerifier.java:240)
    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:345)
    at java.util.jar.JarFile.getInputStream(JarFile.java:412)
    at sun.misc.JarIndex.getJarIndex(JarIndex.java:137)
    at sun.misc.URLClassPath$JarLoader$1.run(URLClassPath.java:668)
    at sun.misc.URLClassPath$JarLoader$1.run(URLClassPath.java:660)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.misc.URLClassPath$JarLoader.ensureOpen(URLClassPath.java:659)
    at sun.misc.URLClassPath$JarLoader.<init>(URLClassPath.java:632)
    at sun.misc.URLClassPath$3.run(URLClassPath.java:362)
    at sun.misc.URLClassPath$3.run(URLClassPath.java:352)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.misc.URLClassPath.getLoader(URLClassPath.java:351)
    at sun.misc.URLClassPath.getLoader(URLClassPath.java:328)
    at sun.misc.URLClassPath.getResource(URLClassPath.java:194)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:358)
    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 java.lang.ClassLoader.loadClass(ClassLoader.java:356)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:266)
    at org.apache.spark.deploy.SparkSubmit$.launch(SparkSubmit.scala:342)
    at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:75)
    at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)

怎么出现无效签名呢?奇怪了,经过查找终于找到了解决方法:

在上传的jar文件中找到META-INF文件夹,如图

Invalid signature file digest for Manifest_第1张图片

进入到META-INF文件件中,删除除MANIFEST.MF文件以外的其它文件和目录,结果如图

Invalid signature file digest for Manifest_第2张图片

将清理后的Jar再次上传到spark服务器,执行命令后,一切顺利!

你可能感兴趣的:(spark,Manifest,sumbit)