2016-12-12 107 views
1

我有以下的SBT文件,我正在使用Apache GraphFrame編譯Scala代碼並且還讀取了CSV文件。Apache-Spark圖框中的SBT

name := "Simple" 

version := "1.0" 

scalaVersion := "2.10.5" 

libraryDependencies ++= Seq(

"org.apache.spark" %% "spark-core" % "1.6.1", 

"graphframes" % "graphframes" % "0.2.0-spark1.6-s_2.10", 

"org.apache.spark" %% "spark-sql" % "1.0.0", 

"com.databricks" % "spark-csv" % "1.0.3" 
) 

這是我在斯卡拉

import org.graphframes._ 
import org.apache.spark.sql.DataFrame 
    val nodesList = sqlContext.read.format("com.databricks.spark.csv").option("header", "true").option("inferSchema", "true").load("/Users/Desktop/GraphFrame/NodesList.csv") 
    val edgesList= sqlContext.read.format("com.databricks.spark.csv").option("header", "true").option("inferSchema", "true").load("/Users/Desktop/GraphFrame/EdgesList.csv") 
    val v=nodesList.toDF("id", "name") 
    val e=edgesList.toDF("src", "dst", "dist") 
    val g = GraphFrame(v, e) 

代碼時,我儘量讓使用SBT的Jar文件,它給了我編譯

[trace] Stack trace suppressed: run last *:update for the full output. 
[error] (*:update) sbt.ResolveException: unresolved dependency: graphframes#graphframes;0.2.0-spark1.6-s_2.10: not found 
[error] Total time: 

回答

3

GraphFrames在下面的錯誤不是在Maven的中央存儲庫尚未。

您可以:

  1. 下載神器上Spark Packages頁,並安裝到本地倉庫
  2. 添加Spark Packages repository到您的SBT build.sbt

守則build.sbt:

resolvers += Resolver.url("SparkPackages", url("https://dl.bintray.com/spark-packages/maven/")) 
+0

上面的代碼工作正常,但現在我有同樣的問題「導入org.apache.spark.sql.DataFrame」 錯誤 「無法解析的依賴關係:org.apache.spark#spark-sql_2.10_2.10; 1.0。 0:未找到「@T。 Gawęda – Aroon

+0

@Aroon你有奇怪的Spark SQL版本 - 「1.0.0」 - 而Spark Core是1.6.1。請將Spark SQL版本也更改爲1.6.1 –

+0

@Aroon也將Scala版本的版本加倍提示您已將其更改爲'「org.apache.spark」%%「spark-sql_2.10」%「1.0.0」 '。請使用%%或添加Scala版本。所以:''org.apache.spark「%%」spark-sql「%」1.6.1「,''or'」org.apache.spark「%」spark-sql_2.10「%」1.6.1「,' –

2

我設法讓它工作NG使用sbt-spark-package

project/plugins.sbt,我說:

resolvers += "bintray-spark-packages" at "https://dl.bintray.com/spark-packages/maven/" 

addSbtPlugin("org.spark-packages" % "sbt-spark-package" % "0.2.5") 

然後,在build.sbt我說:

spDependencies += "graphframes/graphframes:0.5.0-spark2.1-s_2.11" 

和它的工作。

希望它有幫助。

相關問題