尝试从kafka(0.10版本)访问kafka(0.90版本)时,Subscribe方法抛出错误

时间:2016-10-24 07:33:39

标签: apache-kafka subscribe consumer

这是我们的开发环境

1)kafka集群 - 版本为0.10 2)Spark集群 - 1.6具有0.9 Kafka罐子

我们正在尝试在spark集群模式下生成()和consume()。 (通过spark-submit)

在运行spark-submit工作时,spark选择0.9版本的kafka。以下是我们的观察

1)制作人 - 工作正常(0.9 api和0.10 api制作人兼容) 2)使用KafkaUtils流卡夫卡消费者 - 工作正常(似乎这里也是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.common.kafka.init(Kafkafunction.java:150)           在com.client.Client.main(Client.java:100)           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)           at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)           at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)           at java.lang.reflect.Method.invoke(Method.java:606)           在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 /收藏;)V)

1 个答案:

答案 0 :(得分:1)

将所有内容更新到onError可以解决问题。这些版本在此行0.10

中绝对不兼容