java.lang.NoClassDefFoundError : kafka/common/TopicAndPartition 错误

标签 java apache-spark apache-kafka

在我的代码中执行以下命令时:

kafka_streams = [KafkaUtils.createStream(ssc, zk_settings['QUORUM'], zk_settings['CONSUMERS'][k],
                                              {zk_settings['TOPICS'][0]: zk_settings['NUM_THREADS']})
                           .window(zk_settings['WINDOW_DURATION'], zk_settings['SLIDE_DURATION'])
                 for k in range(len(zk_settings['CONSUMERS']))]

但我收到以下错误:

Exception in thread "Thread-3" java.lang.NoClassDefFoundError: kafka/common/TopicAndPartition
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2625)
at java.lang.Class.privateGetPublicMethods(Class.java:2743)
at java.lang.Class.getMethods(Class.java:1480)
at py4j.reflection.ReflectionEngine.getMethodsByNameAndLength(ReflectionEngine.java:365)
at py4j.reflection.ReflectionEngine.getMethod(ReflectionEngine.java:317)
at py4j.reflection.ReflectionEngine.getMethod(ReflectionEngine.java:342)
at py4j.Gateway.invoke(Gateway.java:252)
at py4j.commands.AbstractCommand.invokeMethod(AbstractCommand.java:133)
at py4j.commands.CallCommand.execute(CallCommand.java:79)
at py4j.GatewayConnection.run(GatewayConnection.java:207)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.ClassNotFoundException: kafka.common.TopicAndPartition
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
... 12 more

我错过了什么吗?

我遇到了一些 spark 错误,所以我重建了 spark 错误并导致了这个错误。

最佳答案

您应该在提交代码时添加--packages

 ./bin/spark-submit --packages org.apache.spark:spark-streaming-kafka-0-8_2.11:2.2.0  <DIR>/main.py localhost:9092 test

https://spark.apache.org/docs/latest/streaming-kafka-0-8-integration.html

关于java.lang.NoClassDefFoundError : kafka/common/TopicAndPartition 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35910427/

相关文章:

Java如何获取.jar上图片的路径

java - 如何调用权威服务器获取 ip 响应?

scala - Spark : java. io.NotSerializableException : com. amazonaws.services.s3.AmazonS3Client

apache-spark - 使用模式创建数据框时出现 java.lang.ClassCastException

java - Spring Kafka 生产者不能异步工作

java - mvn clean compile 工作但是 mvn install 编译失败

java - 从字符串 java/gwt 中解析 htmltags

sql - 运行多个SQL查询并测试是否通过Spark Scala

java - Spring Cloud Stream发送到Kafka错误控制处理

apache-kafka - 如何从嵌套 JSON 对象创建 KSQLdb 流字段