Ich schreibe eine einfache Kafka - Funken Streaming-Code in Eclipse, um die Nachrichten von Kafka Broker mit Funken Streaming zu konsumieren der Code ist, erhalte ich die Fehlermeldung, wenn ich versuche, den Code von eclipse auszuführen.funken kafka streaming Fehler - "java.lang.NoClassDefFoundError: org/apache/spark/streaming/kafka/KafkaUtils
ich sicher, dass auch die Abhängigkeits Gläser vorhanden sind, bitten wir
Objekt spark_kafka_streaming {
dieses Fehlers loszuwerden helfendef main(args: Array[String]) {
val conf = new SparkConf()
.setAppName("The swankiest Spark app ever")
.setMaster("local[*]")
val ssc = new StreamingContext(conf, Seconds(60))
ssc.checkpoint("C:\\keerthi\\software\\eclipse-jee-mars-2-win32- x86_64\\eclipse")
println("Parameters:" + "zkorum:" + "group:" + "topicMap:"+"number of threads:")
val zk = "xxxxxxxx:2181"
val group = "test-consumer-group"
val topics = "my-replicated-topic"
val numThreads = 2
val topicMap = topics.split(",").map((_,numThreads.toInt)).toMap
val lines = KafkaUtils.createStream(ssc,zk,group,topicMap).map(_._2)
val words = lines.flatMap(_.split(" "))
val wordCounts = words.map(x => (x,1L)).count()
println("wordCounts:"+wordCounts)
//wordCounts.print
}
}
Ausnahme:
Exception in thread "main" java.lang.NoClassDefFoundError: org/Apache/Zünd-/Streaming/kafka/KafkaUtils $ $ .main (spark_kafka_streaming.scala: 30) bei org.firststream.spark_kakfa.spark_kafka_streaming bei org .firststream.spark_kakfa.spark_kafka_streaming.main (spark_kafka_streaming.scala) verursacht durch: java.lang.ClassNotFoundException: org.apache.spark.streaming.kafka.KafkaUtils $ bei java.net.URLClassLoader.findClass (Unknown Source) bei java.lang.ClassLoader.loadClass (Unbekannte Quelle) bei sun.misc.Launcher $ AppClassLoader.loadClass (Unbekannte Quelle) bei java.lang.ClassLoader.loadClass (Unbekannte Quelle) ... 2 weitere
Abhängigkeiten:
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka_2.10</artifactId>
<version>0.8.1.1</version>
<scope>compile</scope>
<exclusions>
<exclusion>
<artifactId>jmxri</artifactId>
<groupId>com.sun.jmx</groupId>
</exclusion>
<exclusion>
<artifactId>jms</artifactId>
<groupId>javax.jms</groupId>
</exclusion>
<exclusion>
<artifactId>jmxtools</artifactId>
<groupId>com.sun.jdmk</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka-clients</artifactId>
<version>0.8.2.0</version>
</dependency>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-streaming-kafka_2.10</artifactId>
<version>1.2.0</version>
</dependency>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-streaming_2.10</artifactId>
<version>1.2.0</version>
</dependency>
Im Folgenden sind die Einfuhren in der Code-Paket org.firststream.spark_kakfa verwendet Import kafka.serializer.StringDecoder Import org.apache.spark. {SparkContext, SparkConf} Import org.apache.spark.streaming. {Sekunden, Streaming} Import org.apache.spark.streaming.kafka.KafkaUtils Import org.apache.spark.streaming.kafka.KafkaUtils._ Import org.apache.spark.streaming.kafka._ – keerthi
Wie geht es dir diesen Job ausführen? Machst du ein Über JAR? –
Ich starte es von Eclipse, rechtsklicken Sie auf die Datei, führen Sie als Scala-Anwendung durch Eclipse – keerthi