我正在努力让Apache Spark与IntelliJ一起工作。我在IntelliJ中创建了一个SBT项目并完成了以下工作: 1.去文件 - >项目结构 - >图书馆 2.点击' +'在中间部分,单击Maven,单击Maven Repository中的Download Library,键入文本' spark-core'和org.apache.spark:spark-core_2.11:2.2.0,这是Spark可用的最新版本 我将jar文件和源代码下载到项目文件夹中的./lib中 3. Spark库现在显示在库列表中 4.然后我右键单击org.apache.spark:spark-core_2.11:2.2.0并单击添加到项目并添加到模块 现在,当我单击左侧的Modules,然后单击我的主项目文件夹,然后单击右侧的Dependencies选项卡时,我可以将外部库看作Maven库,但是在单击Apply之后,重新构建项目并重新启动IntelliJ ,它不会在项目中显示为外部库。因此,我无法访问Spark API命令。 我做错了什么?我查看了有关IntelliJ和其他一百个来源的所有文档,但无法找到答案。
另外,我是否还需要在build.SBT文件中包含以下文本,以及将Apache Spark指定为外部库依赖项?我假设我需要在build.SBT文件中包含代码,或者手动将Spark添加为外部依赖项,但不能同时添加。 我在build.SBT文件中包含了这段代码:
name := "Spark_example"
version := "1.0"
scalaVersion := "2.12.3"
val sparkVersion = "2.0.0"
libraryDependencies ++= Seq(
"org.apache.spark" %% "spark-core" % sparkVersion,
"org.apache.spark" %% "spark-streaming" % sparkVersion,
"org.apache.spark" %% "spark-sql" % sparkVersion
)
我收到错误:sbt.ResolveException:unresolved dependency:org.apache.spark#spark-core_2.12; 2.2.0:not found
请帮忙!感谢
答案 0 :(得分:7)
Spark没有Scala版本2.12.x的版本。因此,将Scala版本设置为 2.11.x
scalaVersion := "2.11.8"
val sparkVersion = "2.0.0"
libraryDependencies ++= Seq(
"org.apache.spark" %% "spark-core" % sparkVersion,
"org.apache.spark" %% "spark-streaming" % sparkVersion,
"org.apache.spark" %% "spark-sql" % sparkVersion
)
答案 1 :(得分:0)
name := "Test"
version := "0.1"
scalaVersion := "2.11.7"
libraryDependencies += "org.apache.spark" %% "spark-core" % "2.2.0.2.6.4.0-91"
libraryDependencies += "org.apache.spark" %% "spark-sql" % "2.2.0.2.6.4.0-91"
libraryDependencies += "org.apache.spark" %% "spark-hive" % "2.2.0.2.6.4.0-91" % "provided"
libraryDependencies += "org.apache.spark" %% "spark-mllib" % "2.2.0.2.6.4.0-91" % "runtime"
libraryDependencies += "org.apache.spark" %% "spark-streaming" % "2.2.0.2.6.4.0-91" % "provided"
libraryDependencies += "org.apache.spark" %% "spark-hive-thriftserver" % "2.2.0.2.6.4.0-91" % "provided"