Question

I have a Play 2.2.2 app built with Scala 2.10.3.

This is my Build.scala file:

import sbt._
import Keys._
import play.Project._

object ApplicationBuild extends Build {

  val appName         = "my-app"
  val appVersion      = "1.0-SNAPSHOT"

  val appDependencies = Seq(
    "com.typesafe" %% "play-plugins-redis" % "2.2.0"
  )

  val main = play.Project(appName, appVersion, appDependencies).settings(
    resolvers += Resolver.url("sbt-plugin-releases", new URL("http://repo.scala-sbt.org/scalasbt/sbt-plugin-releases/"))(Resolver.ivyStylePatterns),
    resolvers += Resolver.url("Typesafe repository", new URL("http://repo.typesafe.com/typesafe/releases/"))(Resolver.ivyStylePatterns),
    resolvers += Resolver.url("pk11 repo", new URL("http://pk11-scratch.googlecode.com/svn/trunk"))
  )
}

When I run play idea it attempts to get my dependencies but falls over when it gets to the redis plugin, this is the error:

error] (*:update) sbt.ResolveException: unresolved dependency: org.sedis#sedis_2.10.0;1.1.1: not found
[error] Failed to obtain dependency classpath

I can see sbt attempting to locate the dependency here:

[warn] ==== pk11 repo: tried
[warn]   http://pk11-scratch.googlecode.com/svn/trunk/org.sedis/sedis_2.10.0/1.1.1/ivys/ivy.xml

I have found the actual jar file I want at this URL:

http://pk11-scratch.googlecode.com/svn/trunk/org/sedis/sedis_2.10.0/1.1.1/

Why won't SBT go to this directory and download the dependency? Is there a way to get it to look up the dependency as a maven dependency?

During my digging I also found this in the play-plugin-redis library's Build.scala:

https://github.com/typesafehub/play-plugins/blob/master/redis/project/Build.scala

Was it helpful?

Solution

It's looking for an ivy style repository. Change the resolver line to:

resolvers += "pk11 repo" at "http://pk11-scratch.googlecode.com/svn/trunk"
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top