I shaded the Elasticsearch dependency [1] and now the job works. So I cannot run a job that needs guava 18 on Flink 1.2.1...
[1] https://www.elastic.co/blog/to-shade-or-not-to-shade On Wed, Jun 7, 2017 at 5:33 PM, Tzu-Li (Gordon) Tai <tzuli...@apache.org> wrote: > Hi Flavio, > > Could there be another dependency in your job that requires a conflicting > version (w.r.t. ES 2.4.1) of Guava? > I’ve just double checked the flink-dist jar, there doesn’t seem to be any > non-shaded Guava dependencies there, so the conflict should not have been > caused by Flink. > > Cheers, > Gordon > > > On 7 June 2017 at 4:12:04 PM, Flavio Pompermaier (pomperma...@okkam.it) > wrote: > > Hi to all, > I'm trying to use the new ES connector to index data from Flink (with ES > 2.4.1). > When I try to run it from Eclipse everything is ok, when I run it from the > cluster I get the following exception: > > java.lang.NoSuchMethodError: com.google.common.util.concurr > ent.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) > > In my fat jar there are the classes of guava 18 (ES requires that > version), Flink runs on CDH 5.9 (that use guava 11), in flink-dist jar I > think that there's guava 11 classes while in flink-hadoop-compatibility > there are shade guava 18 dependencies. > > How can I make the job successfully run on the cluster? > > Best, > Flavio > >