tou*_*onk 1 java eclipse streaming scala apache-spark
我是一名 Java 老手,正在尝试学习 Scala + Spark Streaming。我下载了基于 Eclipse 的 Scala IDE + Spark 核心 jar + Spark Streaming jar 2.10 并尝试了这个例子 - 我收到错误:
val ssc = new StreamingContext(conf, Seconds(1));
Run Code Online (Sandbox Code Playgroud)
说明 资源路径位置类型错误的符号引用。StreamingContext.class 中的签名指的是包 org.apache.hadoop 中不可用的术语 conf。当前类路径中可能完全缺少它,或者类路径上的版本可能与编译 StreamingContext.class 时使用的版本不兼容。Lab.scala /AirStream/src 第 10 行 Scala 问题
有什么我在这里错过的吗?所有 SparkContext 都没有错误,但 StreamingContext 总是收到此错误。
我遇到了大致相同的问题。这通常是我为 Scala/spark 练习编写的 Scala 类:
package practice.spark
import org.apache.spark.SparkContext._
import org.apache.spark._
import org.apache.spark.sql._
object SparkService {
def sparkInit(sparkInstanceConfig: Configuration): SparkService = {
val sparkConf = new SparkConf().setAppName(sparkInstanceConfig.appName)
val instanceSpark = new SparkService(sparkConf)
return instanceSpark
}
}
class SparkService(sparkConf: SparkConf) {
val sc = new SparkContext(sparkConf)
val sql = new org.apache.spark.sql.SQLContext(sc)
}
Run Code Online (Sandbox Code Playgroud)
在我的 eclipse 项目属性>Java 构建路径>库中,我有 jre8 库、scala 2.11 库、spark-core_2.11 和 spark-sql_2.11。我收到错误
描述 资源路径位置类型在加载类文件“SparkContext.class”时检测到缺少或无效的依赖项。无法访问包 org.apache 中的术语 hadoop,因为它(或其依赖项)丢失。检查您的构建定义是否缺少或冲突的依赖项。(重新运行
-Ylog-classpath以查看有问题的类路径。)如果“SparkContext.class”是针对不兼容的 org.apache 版本编译的,则完全重建可能会有所帮助。BinAnalysis新的未知Scala问题
然后我将hadoop-core jar添加到我的 Java 构建路径中,它解决了这个问题。我使用了那个 jar 的最新版本。
这个问题也可以通过使用 gradle 或其他一些构建工具来解决,这些工具将获取项目中使用的每个 jar 的所有依赖项。
| 归档时间: |
|
| 查看次数: |
6623 次 |
| 最近记录: |