apache-spark - apache spark 流中的日志记录问题

标签 apache-spark spark-streaming

创建 KafkaUtils.createStream() 时出现以下异常; 下面是我的 spark 依赖项。同样的事情在 spark streaming 旧版本 1.5.2 中工作

<dependency>
   <groupId>org.apache.spark</groupId>
   <artifactId>spark-streaming_2.11</artifactId>
 <version>2.0.0</version>
</dependency>
<dependency>
 <groupId>org.apache.spark</groupId>
 <artifactId>spark-streaming-kafka_2.11</artifactId>
<version>1.6.2</version>
</dependency>

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/spark/Logging
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at org.apache.spark.streaming.kafka.KafkaUtils$.createStream(KafkaUtils.scala:91)
    at org.apache.spark.streaming.kafka.KafkaUtils$.createStream(KafkaUtils.scala:66)
    at org.apache.spark.streaming.kafka.KafkaUtils$.createStream(KafkaUtils.scala:110)
    at org.apache.spark.streaming.kafka.KafkaUtils.createStream(KafkaUtils.scala)
    at com.tcs.iux.core.config.RealtimeProcessing.startSpark(RealtimeProcessing.java:78)
    at com.tcs.iux.core.processor.StartRealTimeProcessing.main(StartRealTimeProcessing.java:32)
Caused by: java.lang.ClassNotFoundException: org.apache.spark.Logging
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 18 more

最佳答案

Logging was made private in Spark 2.0

使用 2.0.0 版本的 spark-streaming-kafka_2.11 使其与您的 spark 版本匹配。

<dependency>
 <groupId>org.apache.spark</groupId>
 <artifactId>spark-streaming-kafka_2.11</artifactId>
<version>2.0.0</version>
</dependency>

关于apache-spark - apache spark 流中的日志记录问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39115845/

相关文章:

amazon-web-services - Amazon s3a 使用 Spark 返回 400 Bad Request

java - Apache Spark Streaming 中的非关联聚合

apache-spark - Spark SQL - 如何在查询中设置变量以在整个过程中重复使用?

amazon-s3 - Apache Spark 到 S3 上传性能问题

apache-spark - mapWithState().timeout() 触发某些功能

apache-kafka - 无法访问kafka.serializer.StringDecoder

scala - 在 Spark 流作业中调用实用程序(外部)

java - Spark - 流数据帧/数据集不支持非基于时间的窗口;

java - withColumn() 内的 AnalysisException callUDF()

hadoop - yarn Spark 作业调度较慢