将罐子添加到Spark Job-spark-submit
没错,已经讨论了很多。 但是,存在很多歧义和提供的一些答案...包括在jars / executor / driver配置或选项中复制jar引用。 模棱两可和/或省略的细节 含糊不清之后,应为每个选项澄清不清楚和/或省略的细节: ClassPath如何受到影响 司机 执行器(用于正在运行的任务) 都 一点也不 分隔字符:逗号,冒号,分号 如果提供的文件自动分发 用于任务(针对每个执行者) 用于远程驱动程序(如果以群集模式运行) 接受的URI类型:本地文件,hdfs,http等 如果复制到公共位置,则该位置在哪里(hdfs,本地?) 影响的选项: --jars SparkContext.addJar(...) 方法 SparkContext.addFile(...) 方法 --conf spark.driver.extraClassPath=... 要么 --driver-class-path ... --conf spark.driver.extraLibraryPath=..., 要么 --driver-library-path ... --conf spark.executor.extraClassPath=... --conf spark.executor.extraLibraryPath=... 不要忘记,spark-submit的最后一个参数也是.jar文件。 我知道在哪里可以找到主要的spark文档,尤其是有关如何提交,可用的选项以及JavaDoc的信息。但是,这仍然给我留下了很多空白,尽管它也可以部分解决。 我希望这不是那么复杂,并且有人可以给我一个清晰简洁的答案。 如果我从文档中猜测,似乎--jars和SparkContext addJar和addFile方法都是将自动分发文件的方法,而其他选项仅修改了ClassPath。 为了简单起见,可以安全地假设我可以同时使用3个主要选项添加其他应用程序jar文件: spark-submit --jar additional1.jar,additional2.jar \ --driver-library-path …