2017-01-02 8 views
0

Я пытаюсь создать приложение искры для доступа к содержимому hana vora.как включить sap hana vora внешний jar в build.sbt

моего код Scala

import org.apache.spark.sql._ 
import org.apache.spark.SparkContext._ 
import org.apache.spark.SparkConf 
import org.apache.spark.SparkContext 

object Vora_Test{ 
def main(args: Array[String]) { 
val sconf = new SparkConf().setAppName("VoraTestApp") 
val sc = new SparkContext(sconf) 
val sqlc = new SapSQLContext(sc) 
val queryResult = sqlc.sql("SELECT * from DATA") 
queryResult.collect().foreach(println) 

} 
} 

Я хочу, чтобы включить баночку третьей стороны "искровой-сок-DataSources-1.2.33-assembly.jar" в моей сборке. Я попробовал SBT пакет, SBT сборку

Я использовал следующий build.sbt

name := "VoraApp" 

version := "1.0" 

scalaVersion := "2.10.4" 



libraryDependencies ++= Seq("org.apache.spark" %% "spark-core" % "1.5.2", 

"com.sap.spark" % "extensiondist" % "1.2.37" from "file:///local/file/loc/lib/spark-sap-datasources-1.2.33-assembly.jar") 

Ничего не работало. Я получаю ошибку ниже

Компиляция 1 Источник Scala для локального/file/loc/target/scala-2.10/classes ... [error] bad symbolic reference. Подпись в ExtendableSQLContext.class относится к типу SQLContext [error] в пакете org.apache.spark.sql, который недоступен. [ошибка] Может быть полностью отсутствовать в текущем пути к классам или версии на [ошибка] путь к классам может быть несовместим с версией, используемой при компиляции ExtendableSQLContext.class.

Как преодолеть эту ошибку. Я новичок в scala, sbt, spark и vora.

ответ

1

Вы можете упустить эту зависимость:

"org.apache.spark" % "spark-sql_2.11" % "1.5.1"

+0

спасибо. Это помогло мне. – Subramanian

0

что фактический путь к файлу? Это выглядит необычно для меня ...

файл: ///local/file/loc/lib/spark-sap-datasources-1.2.33-assembly.jar

+0

Мне нужно изменить build.sbt, чтобы включить его в жирную банку – Subramanian