Reputation: 193
I have the following simple SBT file
name := "TweetStream"
version := "1.0"
libraryDependencies += "org.apache.spark" %% "spark-core" % "1.5.2"
libraryDependencies += "org.apache.spark" %% "spark-streaming" % "1.5.2"
libraryDependencies += "com.google.code.gson" %% "gson" % "2.7"
libraryDependencies += "org.twitter4j" %% "twitter4j-core" % "4.0.4"
Somehow the SBT tool is adding a xxx_2.10 in the maven repository path resulting in unresolved dependencies as below.
> compile
[info] Updating {file:/home/hduser/workspace/TweetStream/}tweetstream...
[info] Resolving com.google.code.gson#gson_2.10;2.7 ...
[warn] module not found: com.google.code.gson#gson_2.10;2.7
[warn] ==== local: tried
[warn] /home/hduser/.ivy2/local/com.google.code.gson/gson_2.10/2.7/ivys/ivy.xml
[warn] ==== jcenter: tried
[warn] https://jcenter.bintray.com/com/google/code/gson/gson_2.10/2.7/gson_2.10-2.7.pom
[warn] ==== public: tried
[warn] https://repo1.maven.org/maven2/com/google/code/gson/gson_2.10/2.7/gson_2.10-2.7.pom
[info] Resolving org.twitter4j#twitter4j-core_2.10;4.0.4 ...
[warn] module not found: org.twitter4j#twitter4j-core_2.10;4.0.4
[warn] ==== local: tried
[warn] /home/hduser/.ivy2/local/org.twitter4j/twitter4j-core_2.10/4.0.4/ivys/ivy.xml
[warn] ==== jcenter: tried
[warn] https://jcenter.bintray.com/org/twitter4j/twitter4j-core_2.10/4.0.4/twitter4j-core_2.10-4.0.4.pom
[warn] ==== public: tried
[warn] https://repo1.maven.org/maven2/org/twitter4j/twitter4j-core_2.10/4.0.4/twitter4j-core_2.10-4.0.4.pom
[info] Resolving org.fusesource.jansi#jansi;1.4 ...
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: UNRESOLVED DEPENDENCIES ::
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: com.google.code.gson#gson_2.10;2.7: not found
[warn] :: org.twitter4j#twitter4j-core_2.10;4.0.4: not found
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn]
[warn] Note: Unresolved dependencies path:
[warn] com.google.code.gson:gson_2.10:2.7 (/home/hduser/workspace/TweetStream/build.sbt#L6-7)
[warn] +- default:tweetstream_2.10:1.0
[warn] org.twitter4j:twitter4j-core_2.10:4.0.4 (/home/hduser/workspace/TweetStream/build.sbt#L7-8)
[warn] +- default:tweetstream_2.10:1.0
[trace] Stack trace suppressed: run last *:update for the full output.
[error] (*:update) sbt.ResolveException: unresolved dependency: com.google.code.gson#gson_2.10;2.7: not found
[error] unresolved dependency: org.twitter4j#twitter4j-core_2.10;4.0.4: not found
[error] Total time: 17 s, completed Jun 30, 2016 11:45:29 PM
I have tried deleting the following ivy folder as suggested in another post, but it didn't help.
~/.ivy2/cache$ rm -r commons-logging/
Upvotes: 2
Views: 1468
Reputation: 11318
You don't specify Scala version, and it defaults to 2.10, which is probably not what you want. I don't know if the dependencies you want are published for 2.10.
Another thing is, Gson is not published like a Scala library, so you should rather add it via single %
. Not sure about twitter4j, but the name also suggests it's a Java, not Scala library. Try something like this in your build.sbt
name := "TweetStream"
scalaVersion := "2.11.8" // provide Scala version
version := "1.0"
libraryDependencies += "org.apache.spark" %% "spark-core" % "1.5.2"
libraryDependencies += "org.apache.spark" %% "spark-streaming" % "1.5.2"
libraryDependencies += "com.google.code.gson" % "gson" % "2.7" // notice single `%` instead of `%%`
libraryDependencies += "org.twitter4j" % "twitter4j-core" % "4.0.4" // same here
Upvotes: 6