Spark 提交任務時,報: Invalid signature file digest for Manifest main attributes

    今天在自己的電腦上,Ubuntu 14.04 中用Idea + SBT編寫Spark測試代碼,並打包成jar,上傳到Spark集羣上,submit時報錯:

    Exception in thread "main" java.lang.SecurityException: Invalid signature file digest for Manifest main attributes
    於是開始網上查資料,找原因,在http://blog.csdn.net/liuzhoulong/article/details/19073351上看到了原因,但是,他是使用Maven,而我使用SBT,瞬間我就凌亂了,我怎麼解決? SBT中怎麼使用Maven中的filters和exclude?由於我對SBT不是熟悉,一時不知所措

 後來,繼續google尋求幫助,在 https://gist.github.com/hkhamm/88923412992d284580ea  上看到了解決方法:

  zip -d <jar file name>.jar META-INF/*.RSA META-INF/*.DSA META-INF/*.SF
    即: 在linux下,直接使用zip命令,將打好包的jar文件中的 META-INF/*.RSA META-INF/*.DSA META-INF/*.SF 文件刪掉.於是,我抱着試試的心理,執行了一遍,再次向集羣提交任務.OK,問沒有報錯!故在此備忘,也希望能幫助遇到同樣問題的同學. 

 總結:此類問題應該是針對maven或者sbt等工具打包的jar程序都普遍存在,本方法也同樣適用.

發佈了73 篇原創文章 · 獲贊 40 · 訪問量 64萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章