要为Apache Spark添加到scala项目的依赖项?

时间:2018-05-05 05:02:42

标签: scala apache-spark import

我需要使用以下库 -

import org.apache.spark.SparkConf
import org.apache.spark.graphx.GraphLoader
import org.apache.spark.sql.SparkSession

在intellij上添加到scala的依赖是什么

2 个答案:

答案 0 :(得分:2)

对于import中使用的人,通常需要

如果您使用maven

<properties>
    <spark.version>2.2.0</spark.version>
</properties>
<dependency>
    <groupId>org.apache.spark</groupId>
    <artifactId>spark-sql_2.11</artifactId>
    <version>${spark.version}</version>
</dependency>
<dependency>
    <groupId>org.apache.spark</groupId>
    <artifactId>spark-graphx_2.11</artifactId>
    <version>${spark.version}</version>
</dependency>
<dependency>
    <groupId>org.apache.spark</groupId>
    <artifactId>spark-core_2.11</artifactId>
    <version>${spark.version}</version>
</dependency>

如果您使用sbt

val sparkVersion = "2.2.0"
libraryDependencies ++= Seq(
  "org.apache.spark" %% "spark-core" % sparkVersion,
  "org.apache.spark" %% "spark-sql" % sparkVersion,
  "org.apache.spark" %% "spark-graphx" % sparkVersion
}

其中spark.versionsparkVersion是使用的火花版本。此处使用2.2.0,但您可以选择其他任何内容。

如果您不使用sbtmaven,则需要下载这些库jar文件并添加项目。

希望这有帮助

答案 1 :(得分:0)

正如Shankar正确回答的那样,你可以使用Maven或Sbt构建的工具。我喜欢使用Intelij开始我的scala项目的最好方法是在命令行上运行sbt new

sbt new scala/scala-seed.g8

在此之后,您只需将项目导入Intelij,然后Intelij会自动检测到它是sbt项目。

然后我可以在Shankar所描述的build.sbt文件中轻松添加任何依赖项。

请注意,添加每个依赖项后,Intelij会检测更改并要求您刷新项目。

因此,在您的情况下,简单的build.sbt文件将如下所示:

import Dependencies._

lazy val root = (project in file(".")).
  settings(
     inThisBuild(List(
     organization := "com.example",
     scalaVersion := "2.11.12",
     version      := "0.1.0-SNAPSHOT"
)),
name := "scalatweet",
libraryDependencies ++= Seq(
  scalaTest % Test,
  "org.apache.spark" %% "spark-core" % sparkVersion,
  "org.apache.spark" %% "spark-sql" % sparkVersion,
  "org.apache.spark" %% "spark-graphx" % sparkVersion
 )
 )

为了确保为项目添加正确的依赖项,请在maven repository中搜索库,并记下您用于依赖项兼容性的Scala版本。