一、摘要
由于项目需要搭建spark单独提交jar包运行,而spark提交jar包执行,需要依赖外部其他第三方jar包时候,官方给出的是在spark-submit命令上增加 --jars 参数去指定外部jar包,但是一个项目运行依赖的外部jar及其的多,此种方式肯定是不行的;
网上找的各种方式最终都没有效果,以下是本人所处理的结果;
二、当前运行环境
spark2.4.3 、 jdk1.8 、 scala2.12.2 (不依赖hadoop和oozie等)
三、依赖外部jar包-解决方式及说明
1、在spark根目录下 cd conf 进入目录
2、 执行
cp spark-defaults.conf.template spark-defaults.conf
vi spark-defaults.conf 打开该文件准备添加内容
3、在最末尾增加以下两个配置条目
spark.driver.extraClassPath 外部jar包路径/*
spark.executor.extraClassPath 外部jar包路径/* #如/opt/runjar/lib/*
保存退出,重新执行spark-submit即可
四、说明
1、官网文档给出了很多配置,都是可以在spark-defaults.conf里面配置的;
很多配置在当前版本默认都没有,所以需要手动添加
官网配置文档地址:
http://spark.apache.org/docs/latest/configuration.html
运行环境的配置信息如下