2016-06-22 12 views
21

私は以下のbuild.sbtファイルにspark-corespark-streamingtwitter4j、およびspark-streaming-twitterをダウンロードしようとしていますこんにちは:私は単に私はそうオンラインこのlibraryDependenciesを取っbuild.sbt:スパーク依存関係を追加する方法を

name := "hello" 

version := "1.0" 

scalaVersion := "2.11.8" 

libraryDependencies += "org.apache.spark" %% "spark-core" % "1.6.1" 
libraryDependencies += "org.apache.spark" % "spark-streaming_2.10" % "1.4.1" 

libraryDependencies ++= Seq(
    "org.twitter4j" % "twitter4j-core" % "3.0.3", 
    "org.twitter4j" % "twitter4j-stream" % "3.0.3" 
) 

libraryDependencies += "org.apache.spark" % "spark-streaming-twitter_2.10" % "0.9.0-incubating" 

どのバージョンなどを使用するかわからない。

誰かがこの.sbtファイルをどのように修正するべきか説明してください。私はそれを把握しようとしているカップル時間を過ごしたが、何かの功績が働いた。私は自作を通じてscalaをインストールし、私は私のエラーのすべてが約たバージョン2.11.8

日午前:

Modules were resolved with conflicting cross-version suffixes. 

答えて

32

問題は、あなたがScalaの2.11と2.10の成果物を混合していることです。あなたは持っている:

scalaVersion := "2.11.8" 

そして:

2.10アーティファクトが必要とされている
libraryDependencies += "org.apache.spark" % "spark-streaming_2.10" % "1.4.1" 

を。また、代わりに、一貫性のあるバージョンを使用してのスパークバージョンを混合されています。ここでは

// spark 1.6.1 
libraryDependencies += "org.apache.spark" %% "spark-core" % "1.6.1" 

// spark 1.4.1 
libraryDependencies += "org.apache.spark" % "spark-streaming_2.10" % "1.4.1" 

// spark 0.9.0-incubating 
libraryDependencies += "org.apache.spark" % "spark-streaming-twitter_2.10" % "0.9.0-incubating" 

は、両方の問題が修正されていbuild.sbtである:彼らはあるので、

name := "hello" 

version := "1.0" 

scalaVersion := "2.11.8" 

val sparkVersion = "1.6.1" 

libraryDependencies ++= Seq(
    "org.apache.spark" %% "spark-core" % sparkVersion, 
    "org.apache.spark" %% "spark-streaming" % sparkVersion, 
    "org.apache.spark" %% "spark-streaming-twitter" % sparkVersion 
) 

は手動でもtwitter4j依存関係を追加する必要はありません暫定的にspark-streaming-twitterを追加しました。

+1

ありがとうございました! 1つの簡単な質問では、スカラ( '2.11.8')のバージョンは、バージョン1.6.1のすべてのスパークライブラリで動作しますか? – Bobby

+2

はい。 Spark 1.6.1には2.10と2.11の両方のスカラー版のビルドがあります。 – marcospereira

+0

よろしいですか?ヘルプと情報をありがとう! – Bobby

関連する問題