提交flink任务报错java.lang.SecurityException: Invalid signature file digest for Manifest main attributes

如题

报错如下

[chen@hd05 flink]$ ./flink-1.11.2/bin/flink run -m yarn-cluster -ys 8 -ynm myapp -yjm 1024 -ytm 512 -d -c user.spreadType.UserSpreadTypes ./UserRank-1.0-SNAPSHOT.jar
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/opt/flink/flink-1.11.2/lib/log4j-slf4j-impl-2.12.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/opt/cloudera/parcels/CDH-6.2.1-1.cdh6.2.1.p0.4951328/jars/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]

The program finished with the following exception:
org.apache.flink.client.program.ProgramInvocationException: The program’s entry point class ‘user.spreadType.UserSpreadTypes’ caused an exception during initialization: Invalid signature file digest for Manifest main attributes
at org.apache.flink.client.program.PackagedProgram.loadMainClass(PackagedProgram.java:399)
at org.apache.flink.client.program.PackagedProgram.(PackagedProgram.java:139)
at org.apache.flink.client.program.PackagedProgram.(PackagedProgram.java:61)
at org.apache.flink.client.program.PackagedProgram B u i l d e r . b u i l d ( P a c k a g e d P r o g r a m . j a v a : 557 ) a t o r g . a p a c h e . f l i n k . c l i e n t . c l i . C l i F r o n t e n d . b u i l d P r o g r a m ( C l i F r o n t e n d . j a v a : 726 ) a t o r g . a p a c h e . f l i n k . c l i e n t . c l i . C l i F r o n t e n d . g e t P a c k a g e d P r o g r a m ( C l i F r o n t e n d . j a v a : 242 ) a t o r g . a p a c h e . f l i n k . c l i e n t . c l i . C l i F r o n t e n d . r u n ( C l i F r o n t e n d . j a v a : 223 ) a t o r g . a p a c h e . f l i n k . c l i e n t . c l i . C l i F r o n t e n d . p a r s e P a r a m e t e r s ( C l i F r o n t e n d . j a v a : 916 ) a t o r g . a p a c h e . f l i n k . c l i e n t . c l i . C l i F r o n t e n d . l a m b d a Builder.build(PackagedProgram.java:557) at org.apache.flink.client.cli.CliFrontend.buildProgram(CliFrontend.java:726) at org.apache.flink.client.cli.CliFrontend.getPackagedProgram(CliFrontend.java:242) at org.apache.flink.client.cli.CliFrontend.run(CliFrontend.java:223) at org.apache.flink.client.cli.CliFrontend.parseParameters(CliFrontend.java:916) at org.apache.flink.client.cli.CliFrontend.lambda Builder.build(PackagedProgram.java:557)atorg.apache.flink.client.cli.CliFrontend.buildProgram(CliFrontend.java:726)atorg.apache.flink.client.cli.CliFrontend.getPackagedProgram(CliFrontend.java:242)atorg.apache.flink.client.cli.CliFrontend.run(CliFrontend.java:223)atorg.apache.flink.client.cli.CliFrontend.parseParameters(CliFrontend.java:916)atorg.apache.flink.client.cli.CliFrontend.lambdamain 10 ( C l i F r o n t e n d . j a v a : 992 ) a t j a v a . s e c u r i t y . A c c e s s C o n t r o l l e r . d o P r i v i l e g e d ( N a t i v e M e t h o d ) a t j a v a x . s e c u r i t y . a u t h . S u b j e c t . d o A s ( S u b j e c t . j a v a : 422 ) a t o r g . a p a c h e . h a d o o p . s e c u r i t y . U s e r G r o u p I n f o r m a t i o n . d o A s ( U s e r G r o u p I n f o r m a t i o n . j a v a : 1875 ) a t o r g . a p a c h e . f l i n k . r u n t i m e . s e c u r i t y . c o n t e x t s . H a d o o p S e c u r i t y C o n t e x t . r u n S e c u r e d ( H a d o o p S e c u r i t y C o n t e x t . j a v a : 41 ) a t o r g . a p a c h e . f l i n k . c l i e n t . c l i . C l i F r o n t e n d . m a i n ( C l i F r o n t e n d . j a v a : 992 ) C a u s e d b y : j a v a . l a n g . S e c u r i t y E x c e p t i o n : I n v a l i d s i g n a t u r e f i l e d i g e s t f o r M a n i f e s t m a i n a t t r i b u t e s a t s u n . s e c u r i t y . u t i l . S i g n a t u r e F i l e V e r i f i e r . p r o c e s s I m p l ( S i g n a t u r e F i l e V e r i f i e r . j a v a : 330 ) a t s u n . s e c u r i t y . u t i l . S i g n a t u r e F i l e V e r i f i e r . p r o c e s s ( S i g n a t u r e F i l e V e r i f i e r . j a v a : 263 ) a t j a v a . u t i l . j a r . J a r V e r i f i e r . p r o c e s s E n t r y ( J a r V e r i f i e r . j a v a : 318 ) a t j a v a . u t i l . j a r . J a r V e r i f i e r . u p d a t e ( J a r V e r i f i e r . j a v a : 230 ) a t j a v a . u t i l . j a r . J a r F i l e . i n i t i a l i z e V e r i f i e r ( J a r F i l e . j a v a : 383 ) a t j a v a . u t i l . j a r . J a r F i l e . e n s u r e I n i t i a l i z a t i o n ( J a r F i l e . j a v a : 612 ) a t j a v a . u t i l . j a r . J a v a U t i l J a r A c c e s s I m p l . e n s u r e I n i t i a l i z a t i o n ( J a v a U t i l J a r A c c e s s I m p l . j a v a : 69 ) a t s u n . m i s c . U R L C l a s s P a t h 10(CliFrontend.java:992) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:422) at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1875) at org.apache.flink.runtime.security.contexts.HadoopSecurityContext.runSecured(HadoopSecurityContext.java:41) at org.apache.flink.client.cli.CliFrontend.main(CliFrontend.java:992) Caused by: java.lang.SecurityException: Invalid signature file digest for Manifest main attributes at sun.security.util.SignatureFileVerifier.processImpl(SignatureFileVerifier.java:330) at sun.security.util.SignatureFileVerifier.process(SignatureFileVerifier.java:263) at java.util.jar.JarVerifier.processEntry(JarVerifier.java:318) at java.util.jar.JarVerifier.update(JarVerifier.java:230) at java.util.jar.JarFile.initializeVerifier(JarFile.java:383) at java.util.jar.JarFile.ensureInitialization(JarFile.java:612) at java.util.jar.JavaUtilJarAccessImpl.ensureInitialization(JavaUtilJarAccessImpl.java:69) at sun.misc.URLClassPath 10(CliFrontend.java:992)atjava.security.AccessController.doPrivileged(NativeMethod)atjavax.security.auth.Subject.doAs(Subject.java:422)atorg.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1875)atorg.apache.flink.runtime.security.contexts.HadoopSecurityContext.runSecured(HadoopSecurityContext.java:41)atorg.apache.flink.client.cli.CliFrontend.main(CliFrontend.java:992)Causedby:java.lang.SecurityException:InvalidsignaturefiledigestforManifestmainattributesatsun.security.util.SignatureFileVerifier.processImpl(SignatureFileVerifier.java:330)atsun.security.util.SignatureFileVerifier.process(SignatureFileVerifier.java:263)atjava.util.jar.JarVerifier.processEntry(JarVerifier.java:318)atjava.util.jar.JarVerifier.update(JarVerifier.java:230)atjava.util.jar.JarFile.initializeVerifier(JarFile.java:383)atjava.util.jar.JarFile.ensureInitialization(JarFile.java:612)atjava.util.jar.JavaUtilJarAccessImpl.ensureInitialization(JavaUtilJarAccessImpl.java:69)atsun.misc.URLClassPathJarLoader$2.getManifest(URLClassPath.java:991)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:451)
at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
at org.apache.flink.util.ChildFirstClassLoader.loadClassWithoutExceptionHandling(ChildFirstClassLoader.java:71)
at org.apache.flink.util.FlinkUserCodeClassLoader.loadClass(FlinkUserCodeClassLoader.java:48)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at org.apache.flink.client.program.PackagedProgram.loadMainClass(PackagedProgram.java:387)
… 13 more

解决办法:

zip -d UserRank-1.0-SNAPSHOT.jar 'META-INF/.SF' 'META-INF/.RSA' 'META-INF/*SF'

具体原因不太清楚,猜测是pom中依赖没处理好,有大佬的可以留言说下原因

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值