如何为spark-submit添加资源jar?

2023-12-03

我的spark应用程序依赖于adam_2.11-0.20.0.jar,每次我都必须将我的应用程序与adam_2.11-0.20.0.jar打包为fat jar以提交到spark。

例如我的fat jar是myApp1-adam_2.11-0.20.0.jar,

按如下方式提交就可以了

spark-submit --class com.ano.adam.AnnoSp myApp1-adam_2.11-0.20.0.jar

它报告了异常

线程“main”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 个单独的 jar 来提交而不将它们打包在一起

spark-submit --class com.ano.adam.AnnoSp myApp1.jar adam_2.11-0.20.0.jar

将所有罐子添加到一个文件夹中,然后执行如下操作......

选项1 :

我认为更好的方法是

$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,因此不会出现警告。

选项2见我的回答:

Spark-submit-jars-arguments-want-comma-list-如何声明目录

选项 3:如果您想通过 API 添加 jar 来进行编程提交,这是可能的。这里我不会详细介绍它。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何为spark-submit添加资源jar? 的相关文章

随机推荐