这是我们的开发环境
1)kafka集群 - 版本是0.10 2)Spark集群 - 1.6有0.9 Kafka jar
我们试图在spark集群模式下生成()和consume() . (通过spark-submit)
在运行spark-submit工作时,spark选择了0.9版本的kafka . 以下是我们的观察
1) 生产环境 者 - 工作正常(0.9 api和0.10 api 生产环境 者兼容)2)使用KafkaUtils流 Kafka 消费者 - 工作正常(似乎这里也是0.9 api和0.10 api 生产环境 者兼容)3)消费者使用subscribe()API - 错误输出以下消息 . 有人可以帮助我们知道它为什么失败了吗?
16/10/24 02:31:08错误yarn.ApplicationMaster:用户类抛出异常:java.lang.NoSuchMethodError:org.apache.kafka.clients.consumer.KafkaConsumer.subscribe(Ljava / util / Collection;)V java .lang.NoSuchMethodError:org.apache.kafka.clients.consumer.KafkaConsumer.subscribe(Ljava / util / Collection;)V com.com.comient.Client.main上的com.common.kafka.init(Kafkafunction.java:150) (client.java:100)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.invoke:57)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at at java.lang.reflect.Method.invoke(Method.java:606)at org.apache.spark.deploy.yarn.ApplicationMaster $$ anon $ 2.run(ApplicationMaster.scala:542)16/10/24 02:31: 08 INFO yarn.ApplicationMaster:最终应用程序状态:FAILED,exitCode:15,(原因:用户类抛出异常:java.lang.NoSuchMethodError:org.apache.kafka.clients.consumer.KafkaConsumer.subscribe(Ljava / util / Collecti)上;)V)