java - 从 Spark 类路径中删除 Jars

标签 java hadoop elasticsearch jar apache-spark

我正在使用 ElasticSearch Spark Jar。但由于某种原因,当我启动 SparkContext 时,它也会从

中获取 elastic-hive jar

/usr/lib/hive/lib/elasticsearch-hadoop-hive-2.1.0.jar

这导致了两者冲突的 elasticrdd 问题。

有谁知道该 Jar 如何进入 Spark 以及如何在启动上下文之前将其从 Spark 类路径中删除?

谢谢。

最佳答案

事实证明,这是加载该目录的conf/spark-env.sh 中的默认配置。通过加载您想要的 jar 而不是您不想要的 jar 的不同文件夹,可以轻松解决此问题。 所以代替这个:

SPARK_DIST_CLASSPATH="$SPARK_DIST_CLASSPATH:/usr/lib/hive/lib/*"

这会起作用:

SPARK_DIST_CLASSPATH="$SPARK_DIST_CLASSPATH:/usr/lib/hive/lib/spark/*"

假设您将相关 jar 复制到该文件夹​​中

关于java - 从 Spark 类路径中删除 Jars,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34228750/

相关文章:

elasticsearch - 我无法在没有属性的Elasticsearch中进行查询。<字段名称>

lucene - 在 Elasticsearch 查询中获取所有匹配的方面

c# - 如果输出文档分数与ID相同,则C#Elastic Search Nest

java - 如何在所有过滤器之前运行 PhaseListener?

java - 为 gremlin 服务器配置 neo4j

java - 如何让 MySQL Connector/J 在 Android 上运行?

java - "hadoop namenode -format"返回 java.net.UnknownHostException

amazon-web-services - 使用本地机器从 s3 读取数据 - pyspark

java - 使用 SimpleDateFormat 时出现 ParseException

java - Hadoop Map Reduce 程序键值传递