2016-08-12 1 views
0

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 helfen
def 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> 
+0

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

+0

Wie geht es dir diesen Job ausführen? Machst du ein Über JAR? –

+0

Ich starte es von Eclipse, rechtsklicken Sie auf die Datei, führen Sie als Scala-Anwendung durch Eclipse – keerthi

Antwort

1

i kommentiert die folgenden Abhängigkeiten. Spark-streaming-kafka_2.10 hinzugefügt und kafka_2.10-0.8.1.1 jar zu referenzierten Bibliotheken in eclpise direkt hinzugefügt, indem Sie auf Build Path -> configure build path -> Externe Jars klicken. Dies hat das Problem behoben.

<!-- 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>--> 
Verwandte Themen