我的spark应用程序依赖于adam_2.11-0.20.0.jar,每次我必须将我的应用程序与adam_2.11-0.20.0.jar打包为胖罐以提交给spark。
例如,我的胖罐是myApp1-adam_2.11-0.20.0.jar,
可以提交以下内容
spark-submit --class com.ano.adam.AnnoSp myApp1-adam_2.11-0.20.0.jar
它在
中报告了例外情况线程"主要" java.lang.NoClassDefFoundError:
org / bdgenomics / adam / rdd使用--jars
spark-submit --class com.ano.adam.AnnoSp myApp1.jar --jars adam_2.11-0.20.0.jar
我的问题是如何使用2个单独的罐子提交而不将它们打包在一起
spark-submit --class com.ano.adam.AnnoSp myApp1.jar adam_2.11-0.20.0.jar
答案 0 :(得分:3)
将所有罐子添加到一个文件夹中,然后执行以下操作...
我认为更好的方法是
$SPARK_HOME/bin/spark-submit \
--driver-class-path $(echo /usr/local/share/build/libs/*.jar | tr ' ' ',') \
--jars $(echo /usr/local/share/build/libs/*.jar | tr ' ' ',')
在这种方法中,你不会错过类路径中的任何jar,因此不应该发出警告。
spark-submit-jars-arguments-wants-comma-list-how-to-declare-a-directory