簡體   English   中英

使用spark cassandra連接器和SBT編譯錯誤

[英]Compilation errors with spark cassandra connector and SBT

我正在嘗試讓DataStax spark cassandra連接器正常工作。 我在IntelliJ中創建了一個新的SBT項目,並添加了一個類。 類和我的SBT文件如下。 創建spark上下文似乎有效,但是,當我取消注釋我嘗試創建cassandraTable的那一行時,我得到以下編譯錯誤:

錯誤:scalac:錯誤的符號引用。 CassandraRow.class中的簽名是指包org.apache.spark.sql中的術語催化劑,它不可用。 它可能在當前類路徑中完全丟失,或者類路徑上的版本可能與編譯CassandraRow.class時使用的版本不兼容。

Sbt對我來說是一種新的東西,我很感激任何幫助,以了解這個錯誤的含義(當然,如何解決它)。

name := "cassySpark1"

version := "1.0"

scalaVersion := "2.10.4"

libraryDependencies += "org.apache.spark" % "spark-core_2.10" % "1.1.0"

libraryDependencies += "com.datastax.spark" % "spark-cassandra-connector" % "1.1.0" withSources() withJavadoc()

libraryDependencies += "com.datastax.spark" %% "spark-cassandra-connector-java" % "1.1.0-alpha2" withSources() withJavadoc()

resolvers += "Akka Repository" at "http://repo.akka.io/releases/"

而我的班級:

import org.apache.spark。{SparkConf,SparkContext}

import com.datastax.spark.connector._

object HelloWorld {def main(args:Array [String]):Unit = {System.setProperty(“spark.cassandra.query.retry.count”,“1”)

 val conf = new SparkConf(true) .set("spark.cassandra.connection.host", "cassandra-hostname") .set("spark.cassandra.username", "cassandra") .set("spark.cassandra.password", "cassandra") val sc = new SparkContext("local", "testingCassy", conf) 

> // val foo = sc.cassandraTable(“keyspace name”,“table name”)

 val rdd = sc.parallelize(1 to 100) val sum = rdd.reduce(_+_) println(sum) } } 

您需要將spark-sql添加到依賴項列表中

libraryDependencies += "org.apache.spark" %% "spark-sql" % "1.1.0"

在項目的pom.xml文件中添加庫依賴項。 看來他們在新的重構中改變了Vector.class依賴關系的位置。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM