对让Scala在IntelliJ中运行感到困惑?导入错误
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对让Scala在IntelliJ中运行感到困惑?导入错误相关的知识,希望对你有一定的参考价值。
我试图在IntelliJ中运行一个简单的scala程序。
我的build.sbt看起来像这样:
name := "UseThis"
version := "0.1"
scalaVersion := "2.12.4"
libraryDependencies += "org.apache.spark" %% "spark-core" % "1.2.0"
我的导入代码如下所示:
package WorkWork.FriendsByAge
import com.sun.glass.ui.Window.Level
import com.sun.istack.internal.logging.Logger
import org.apache.spark._
import org.apache.spark.SparkContext._
import org.apache.log4j._
我不知道导入失败的原因。它告诉我依赖项无法加载或找不到,但我根据需要将该行放在build.sbt中。我还需要做一些其他的步骤吗?我安装了火花。它是构建行末尾的版本说明吗?我甚至不知道如何检查我的火花版本。我正在尝试自学Scala(不是一个菜鸟,我知道Python,R,各种各样的SQL,C#),但我的话甚至设置它几乎是不可能的,显然它甚至运行也是如此。有任何想法吗?
看看这个页面:Maven Central (Apache Spark core)
除非你已经设置了一些其他的存储库,否则sbt
将加载的依赖关系通常来自那里。
有一个version
列,数字像2.2.1
,然后有一个scala
列,数字像2.11
,2.10
。为了使spark和scala一起工作,您必须从此表中选择一个有效的组合。
截至28.Feb 2018,没有与scala 2.12.4一起使用的Spark版本。 1.2.0
最新版本的scala是2.11
。所以,您可能希望将scala版本设置为2.11
。
另请注意您的SBT中的%%
语法
"org.apache.spark" %% "spark-core" % "1.2.0"
将自动将后缀_2.12
附加到artifact-id-part。由于没有spark-core_2.12
,因此无法解析依赖关系,也无法在代码中导入任何内容。
顺便说一句:火花1.2和火花1.3之间存在很大差异,然后在1.x和2.x之间再次存在很大差异。它真的必须是1.2吗?
因为Spark 1.2不适用于Scala 2.12
https://mvnrepository.com/artifact/org.apache.spark/spark-core
以上是关于对让Scala在IntelliJ中运行感到困惑?导入错误的主要内容,如果未能解决你的问题,请参考以下文章
如何在IntelliJ IDEA中运行Java/Scala/Spark程序
由于多个 scala lib 版本,intellij 2019.02 无法运行任何 scala 类