Exception on samza KafkaSystemFactory.getAdmin



我正在运行Samza来消费Scala中给定Kafka主题的消息。为了运行,我创建了一个samza-read.properties文件,其中包含:

systems.kafka.samza.factory=org.apache.samza.system.kafka.KafkaSystemFactory
systems.kafka.samza.msg.serde=byte
systems.kafka.consumer.auto.offset.reset=largest
systems.kafka.consumer.zookeeper.connect=localhost:2181/
systems.kafka.producer.bootstrap.servers=localhost:9092

然而,当我运行我的程序时,我不断收到异常:java.lang.NoClassDefFoundError: kafka/common/ReplicaNotAvailableException at org.apache.samza.system.kafka.KafkaSystemFactory.getAdmin(KafkaSystemFactory.scala:106)

我相信这必须处理systems.kafka.samza.factory=org.apache.samza.system.kafka.KafkaSystemFactory但也许有人以前遇到过这个例外。任何帮助将不胜感激!

您的构建似乎存在以下问题之一:

  • 您在类路径中缺少卡夫卡罐(例如:org.apache.kafka_kafka_.jar(

  • 类路径中的 Kafka jar 版本与getAdmin期望的版本不兼容

  • 您可能有 2 个版本的 Kafka jar(一个正确 + 一个不正确(,并且 JVM 正在拾取不正确的版本(此处的修复是为了在您的构建中排除错误版本(

最新更新