最近在做一个小项目,涉及到通过shell脚本提交Spark任务到集群,Spark任务主要是执行spark.sql(),由shell脚本来执行spark-submit提交任务。 报错Error: Failed to load class com.ksyun.bigdata.spark.SparkExecute.如下图所示:
shell脚本的内容是:
Spark项目的创建步骤是先建maven项目,然后添加依赖,接着Add FrameWork添加Scala,最后写Spark主要代码。
Spark任务主要代码:
pom文件依赖包括:
将打包好的jar包放到集群上执行脚本时报错提示找不到类。
解决方案:在本地Idea项目点击File->Project Structure->Moudles,找到Scala sdk右击然后点击Analyze This Dependency,可以看到项目并没有依赖该SDK,直接remove掉,再打包上传执行就可以了。
任务提交成功:
总结:原因笔者还不清楚,惭愧,做一个记录,仅供参考。