Не удается получить зависимость spray-json для работы в игровом проекте



Я потратил бесчисленное количество часов, пытаясь заставить spray json быть включенным в качестве зависимости в мой игровой проект, построенный на scala 2.10.



Может ли кто-нибудь дать окончательное объяснение точным магическим заклинаниям, которые будут использоваться в файлах проекта для этой вещи?!!!!

Построить.scala:



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

object ApplicationBuild extends Build {
val appName = "linscot"
val appVersion = "1.0"

val appDependencies = Seq(
jdbc,
anorm,
"mysql" % "mysql-connector-java" % "5.1.18",
"com.cloudphysics" % "jerkson_2.10" % "0.6.3",

//"cc.spray.json" % "spray-json_2.9.1" %"1.0.1"
"io.spray" % "spray-json_2.10.1" % "1.2.5"
)


val main = play.Project(appName, appVersion, appDependencies).settings(
// Add your own project settings here

//libraryDependencies += "io.spray" %% "spray-json" % "1.2.5"


)
}


Получаем следующее:



[info] Updating {file:/Users/Joel/Projects/linscot-server/}linscot...
[warn] module not found: io.spray#spray-json_2.10.1;1.2.5
[warn] ==== local: tried
[warn] /Users/Joel/.ivy2/local/io.spray/spray-json_2.10.1/1.2.5/ivys/ivy.xml
[warn] ==== Typesafe Releases Repository: tried
[warn] http://repo.typesafe.com/typesafe/releases/io/spray/spray-json_2.10.1/1.2.5/spray-json_2.10.1-1.2.5.pom
[warn] ==== Typesafe Snapshots Repository: tried
[warn] http://repo.typesafe.com/typesafe/snapshots/io/spray/spray-json_2.10.1/1.2.5/spray-json_2.10.1-1.2.5.pom
[warn] ==== public: tried
[warn] http://repo1.maven.org/maven2/io/spray/spray-json_2.10.1/1.2.5/spray-json_2.10.1-1.2.5.pom
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: UNRESOLVED DEPENDENCIES ::
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: io.spray#spray-json_2.10.1;1.2.5: not found
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[error] (*:update) sbt.ResolveException: unresolved dependency: io.spray#spray-json_2.10.1;1.2.5: not found
[warn] some of the dependencies were not recompiled properly, so classloader is not avaialable
[info] Updating {file:/Users/Joel/Projects/linscot-server/}linscot...
[warn] module not found: io.spray#spray-json_2.10.1;1.2.5
[warn] ==== local: tried
[warn] /Users/Joel/.ivy2/local/io.spray/spray-json_2.10.1/1.2.5/ivys/ivy.xml
[warn] ==== Typesafe Releases Repository: tried
[warn] http://repo.typesafe.com/typesafe/releases/io/spray/spray-json_2.10.1/1.2.5/spray-json_2.10.1-1.2.5.pom
[warn] ==== Typesafe Snapshots Repository: tried
[warn] http://repo.typesafe.com/typesafe/snapshots/io/spray/spray-json_2.10.1/1.2.5/spray-json_2.10.1-1.2.5.pom
[warn] ==== public: tried
[warn] http://repo1.maven.org/maven2/io/spray/spray-json_2.10.1/1.2.5/spray-json_2.10.1-1.2.5.pom
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: UNRESOLVED DEPENDENCIES ::
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: io.spray#spray-json_2.10.1;1.2.5: not found
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[error] (*:update) sbt.ResolveException: unresolved dependency: io.spray#spray-json_2.10.1;1.2.5: not found
553   2  

2 ответов:

Формат зависимости spray-json:

"io.spray" %%  "spray-json" % "1.2.5"

Использование %% гарантирует, что вы получите правильную версию для используемой версии Scala.

Spray не использует один из стандартных репозиториев для распространения библиотеки, поэтому вы также должны указать его. Настройки с этим тогда становятся:

val main = play.Project(appName, appVersion, appDependencies).settings(   
    resolvers += "spray" at "http://repo.spray.io/",
    libraryDependencies += "io.spray" %%  "spray-json" % "1.2.5"
)

Я столкнулся с этим вопросом, когда не смог получить зависимость spray-json в версии 1.3.2, работающую в моем проекте. СБТ.последний.лог говорил мне: СБТ.ResolveException: неразрешенная зависимость: io.спрей#spray-json_2. 11; 1.3.2: не найден. Оказалось, что Spray-JSON артефакт в версии 1.3.2 просто не доступен в http://repo.spray.io хранилище. Решение заключается в использовании версии 1.3.1 вместо этого.

Comments

    Ничего не найдено.