sbt打包Scala寫的Spark程序,打包正常,提交運行時提示找不到對應的類
詳述
- 使用sbt對寫的Spark程序打包,過程中沒有問題
- spark-submit提交jar包運行提示找不到對應的類
解決
- 編譯環境沒有變化,將代碼拷貝到其他項目下打包可以運行,無解
- 偶然發現IDEA打開的sbt文件顯示很多錯誤,查看詳情發現存在錯誤:java-lang-ClassNotFoundException-org-jetbrain,遂谷歌之,找到了這個網頁 ,說是IDEA的bug,打開use sbt shell for build and import選項就好了。嘗試之,解決。
- 另外,Scala中類package object xxxx是創建object默認的寫法,把package要去掉
參考
- https://intellij-support.jetbrains.com/hc/en-us/community/posts/115000671044-What-is-estimate-to-support-SBT-1-0-x-or-java-lang-ClassNotFoundException-org-jetbrains-sbt-CreateTasks-
- https://intellij-support.jetbrains.com/hc/en-us/community/posts/206633295-SBT-0-13-9-fail-java-lang-ClassNotFoundException-org-jetbrains-sbt-ReadProject-