未解决的依赖关系:com.typesafe.play#play-slick_2.10;0.6.0.1:未找到
Posted
技术标签:
【中文标题】未解决的依赖关系:com.typesafe.play#play-slick_2.10;0.6.0.1:未找到【英文标题】:unresolved dependency: com.typesafe.play#play-slick_2.10;0.6.0.1: not found 【发布时间】:2014-06-13 00:14:10 【问题描述】:在 Mac OS X Mavericks 上尝试将 slick 或 play-slick 与 Play Framework 2.2.2、sbt 0.13.0 和 Scala 2.10.3 一起使用时,我遇到了未解决的依赖关系错误。
[info] Updating file:/Users/michaelrichardson/Documents/Play/glasgowEffect/glasgoweffect...
[info] Resolving com.typesafe.play#slick_2.10;2.0.0 ...
[warn] module not found: com.typesafe.play#slick_2.10;2.0.0
[warn] ==== Typesafe Releases Repository: tried
[warn] http://repo.typesafe.com/typesafe/releases/com/typesafe/play/slick_2.10/2.0.0/slick_2.10-2.0.0.pom
[info] Resolving com.typesafe.play#play-slick_2.10;0.6.0.1 ...
[warn] module not found: com.typesafe.play#play-slick_2.10;0.6.0.1
[warn] ==== Typesafe Releases Repository: tried
[warn] http://repo.typesafe.com/typesafe/releases/com/typesafe/play/play-slick_2.10/0.6.0.1/play-slick_2.10-0.6.0.1.pom
[info] Resolving org.fusesource.jansi#jansi;1.4 ...
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: UNRESOLVED DEPENDENCIES ::
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: com.typesafe.play#slick_2.10;2.0.0: not found
[warn] :: com.typesafe.play#play-slick_2.10;0.6.0.1: not found
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[trace] Stack trace suppressed: run last *:update for the full output.
[error] (*:update) sbt.ResolveException: unresolved dependency: com.typesafe.play#slick_2.10;2.0.0: not found
[error] unresolved dependency: com.typesafe.play#play-slick_2.10;0.6.0.1: not found
[error] Total time: 7 s, completed Apr 27, 2014 2:58:48 PM
我尝试清除我的 ivy 缓存,运行 play clean
并添加不同的解析器,但没有任何效果。
这是 build.sbt 文件:
name := "Test"
version := "1.0-SNAPSHOT"
libraryDependencies ++= Seq(
jdbc,
anorm,
cache,
"com.typesafe.slick" %% "slick" % "2.0.0",
"com.typesafe.play" %% "play-slick" % "0.6.0.1"
)
play.Project.playScalaSettings
更新:调查解析器
[play21-osm] $ 显示解析器 [信息] 列表(类型安全版本库:http://repo.typesafe.com/typesafe/releases/,类型安全版本:http://typesafe.artifactoryonline.com/typesafe,pk11 存储库:http://pk11-scratch.googlecode.com/svn/trunk) [play21-osm] $ 显示外部解析器 [信息] ArrayBuffer(FileRepository(local,FileConfiguration(true,None),Patterns(ivyPatterns=List($ivy.home/local/[organisation]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion] ]/)[revision]/[type]s/artifact.[ext]), artifactPatterns=List($ivy.home/local/[organisation]/[module]/(scala_[scalaVersion]/)(sbt_[ sbtVersion]/)[revision]/[type]s/artifact.[ext]), isMavenCompatible=false)), Maven2 Local: file:/Users/mr/.m2/repository, public: http://repo1.maven.org/maven2/, Typesafe Releases Repository :http://repo.typesafe.com/typesafe/releases/,Typesafe 版本:http://typesafe.artifactoryonline.com/typesafe,pk11 回购:http://pk11-scratch.googlecode.com/svn/trunk)
【问题讨论】:
【参考方案1】:退出 Play 管理中心,并确保您的 build.sbt
如下所示:
name := "Test"
version := "1.0-SNAPSHOT"
libraryDependencies ++= Seq(
jdbc,
anorm,
cache,
"com.typesafe.slick" %% "slick" % "2.0.0",
"com.typesafe.play" %% "play-slick" % "0.6.0.1"
)
play.Project.playScalaSettings
删除$PLAY_HOME/repository/cache/com.typesafe.slick
和$PLAY_HOME/repository/cache/com.typesafe.play/play-slick_2.10
。如果您愿意,您可能希望删除完整的缓存目录。
再次运行 Play 控制台并执行 update
,然后执行 compile
。
【讨论】:
我删除了完整的缓存目录。现在,当我运行 Play 时出现错误:Error during sbt execution: No repositories defined.
我尝试使用 brew 卸载并重新安装 play 和 sbt。没有解决任何问题
如果您进入项目目录并查看project/plugins.sbt
,您是否在那里定义了存储库?它是一个新项目还是您正在尝试构建现有的东西?编辑:还有一件事,你可以运行游戏控制台并执行show resolvers
和show externalResolvers
吗?
project/plugins.sbt 文件是新播放安装的标准文件。我无法进入游戏控制台。它给出了错误Error during sbt execution: No repositories defined.
并仅退出该行。我曾尝试使用 brew、macports 和手动重新安装 sbt,但每次都会出现相同的错误。当我在命令行输入 sbt 时,我得到了同样的错误。如果我创建一个新的播放安装,问题是一样的。
这些错误可能是由于我运行了另一个线程建议的以下命令吗? rm ~/.ivy2/cache/* -R
我不认为你提到的命令有任何害处(除了需要时间从互联网上重新下载的东西)。您是否在~/.sbt/repositories
中定义了任何特殊存储库。 project/plugins.sbt
的内容又是什么?可以肯定的是,您可以通过转到您的应用所在的文件夹并在那里运行play
来启动您的游戏控制台,对吧?【参考方案2】:
您的 slick 依赖项的组名错误。应该是com.typesafe.slick
而不是com.typesafe.play
:
"com.typesafe.slick" %% "slick" % "2.0.0"
【讨论】:
谢谢,但它仍然给出错误。 [错误] (*:update) sbt.ResolveException: unresolved dependency: com.typesafe.slick#slick_2.10;2.0.0: not found @MichaelRichardson 这很奇怪。它应该与正确的 gorup 一起正常工作(在我的机器上,确实如此)。你有代理或特殊的解析器吗? 我很确定我没有代理或特殊解析器。我认为 Play、sbt 或 ivy 可能已损坏,这是我问题的根源。我使用 brew 来安装 play 和 sbt。我使用 brew 卸载并重新安装 play 和 sbt 但这并没有修复它。我按照 lpiepiora 的建议删除了整个播放缓存,现在运行播放命令时出现错误Error during sbt execution: No repositories defined.
。【参考方案3】:
很难说这是否真的是解决问题的原因,但它现在对我有用。
cd ~
brew uninstall sbt
brew uninstall play
mv .sbt .sbtold
mv .ivy2 .ivy2old
brew install sbt
brew install play
sbt
play
sbt clean
我认为我的 sbt 或 ivy 存储库已损坏,这导致它们被重建。
【讨论】:
我想知道它们是否被损坏是因为其中一个文件被锁所以 sbt 无法读取/更改它以上是关于未解决的依赖关系:com.typesafe.play#play-slick_2.10;0.6.0.1:未找到的主要内容,如果未能解决你的问题,请参考以下文章