居然是你

ES与Hive与Spark集成的问题

Elasticsearch | 作者 ly898197688 | 发布于2018年10月26日 | 阅读数:2679

ES 版本是 2.4.1  spark 1.6.0,scala2.10,hive1.1.0  。。项目使用Maven进行管理。
有关ES的包

1540548408(1).jpg

 
项目运行,数据写入ES时报错。
java.lang.NoSuchMethodError: com.google.common.util.concurrent.MoreExecutors.directExecutor()Ljava/util/concurrent/Executor;
at org.elasticsearch.threadpool.ThreadPool.<clinit>(ThreadPool.java:192)
at org.elasticsearch.client.transport.TransportClient$Builder.build(TransportClient.java:131)

1540548774(1).jpg

具体是在Settings 在build的时候出错。
用了2天时间,还没解决,求帮忙
 
已邀请:

rochy - rochy_he

赞同来自: gfswsry

你这个是 ES 与大数据项目结合经常会遇到的 jar 包冲突的问题;
最常见的冲突是 google.guava 这个 jar ;
对于 jar 包冲突你可以尝试使用 maven-shade-plugin 将冲突的 jar 包隐藏起来
详情请参考:https://www.jianshu.com/p/d9fb7afa634d

ly898197688

赞同来自:

1540792158(1).jpg

这是和es有关的3个包。里面都没有包含com.google.common.util.concurrent.MoreExecutors 这个类
 

要回复问题请先登录注册