刚刚在工作中选择了一个Scala / Play项目,并且在使用Apache Maven之后,我正在尝试了解这项工作。
Typesafe和Sonatype repos最近在工作时被阻止,当我运行构建时,它抱怨缺少插件jar。似乎SBT总是只尝试在线回购,即使我在plugins.sbt
文件中指定了其他存储库,如下所示:
[warn] [NOT FOUND ] play#sbt-plugin;2.1.1!sbt-plugin.jar (22ms)
[warn] ==== typesafe-ivy-releases: tried
我确实看到此广告素材存在于本地游戏仓库(%PLAY_HOME%/repositories/local
下),我确实看到了Play全球local
和sbt.boot.properites
中指定的play.boot.properties
文件。
如何让SBT真正看到那里(在查看其他在线资料后)?
我还在Play和SBT boot.properties
文件中添加了以下内容,希望明确指出,但它没有帮助:
play-local: file://${play.home}/../repository/local/, [organization]/[module]/[revision]/[type]s/[artifact](-[classifier]).[ext]
此时我很难过。我希望在构建时至少看到 local:trying 消息。
有没有办法让SBT在sbt-plugins.jar
本地查看?是否有某种缓存?我错过了什么吗?请指教。
EDIT1(3/12/2014):根据要求,这是我的plugins.sbt文件(本地,项目级别)
import sbt._
import Defaults._
logLevel := Level.Warn
resolvers ++= Seq(
"Typesafe repository" at "http://repo.typesafe.com/typesafe/releases/",
"sonatype-releasess" at "http://oss.sonatype.org/content/repositories/releases/"
)
addSbtPlugin("play" % "sbt-plugin" % "2.1.1")
addSbtPlugin("org.scalastyle" % "scalastyle-sbt-plugin" % "0.3.1")
addSbtPlugin("com.github.play2war" % "play2-war-plugin" % "1.0")
我还有一个根级sbt.plugins
文件(在%PLAY_HOME%/framework/project
下面),如下所示:
logLevel := Level.Warn
resolvers += Classpaths.typesafeResolver
addSbtPlugin("com.typesafe" % "sbt-mima-plugin" % "0.1.4")
addSbtPlugin( "com.typesafe.sbtscalariform" % "sbtscalariform" % "0.5.1")
addSbtPlugin("com.github.mpeltonen" % "sbt-idea" % "1.1.0")
这是play clean
执行的projRoot\src\main level
命令的标准输出:
[info] Loading project definition from C:\path\to\my\proj\src\main
[warn] [NOT FOUND ] play#sbt-plugin;2.1.1!sbt-plugin.jar (29ms)
[warn] ==== typesafe-ivy-releases: tried
[warn] http://repo.typesafe.com/typesafe/ivy-releases/play/sbt-plugin/scala_2.9.2/sbt_0.12/2.1.1/jars/sbt-plugin.jar
[warn] [NOT FOUND ] org.scalastyle#scalastyle-sbt-plugin;0.3.1!scalastyle-sbt-plugin.jar (204ms)
[warn] ==== sonatype-releasess: tried
[warn] http://oss.sonatype.org/content/repositories/releases/org/scalastyle/scalastyle-sbt-plugin_2.9.2_0.12/0.3.1/scalastyle-sbt-plugin-0.3.1.jar
[warn] [NOT FOUND ] com.github.play2war#play2-war-plugin;1.0!play2-war-plugin.jar (13ms)
[warn] ==== sbt-plugin-releases: tried
[warn] http://scalasbt.artifactoryonline.com/scalasbt/sbt-plugin-releases/com.github.play2war/play2-war-plugin/scala_2.9.2/sbt_0.12/1.0/jars/play2-war-plugin.jar
[warn] [NOT FOUND ] com.typesafe.sbteclipse#sbteclipse-plugin;2.1.1!sbteclipse-plugin.jar (31ms)
[warn] ==== typesafe-ivy-releases: tried
[warn] http://repo.typesafe.com/typesafe/ivy-releases/com.typesafe.sbteclipse/sbteclipse-plugin/scala_2.9.2/sbt_0.12/2.1.1/jars/sbteclipse-plugin.jar
[warn] [NOT FOUND ] com.typesafe.sbtidea#sbt-idea;1.1.1!sbt-idea.jar (28ms)
[warn] ==== typesafe-ivy-releases: tried
[warn] http://repo.typesafe.com/typesafe/ivy-releases/com.typesafe.sbtidea/sbt-idea/scala_2.9.2/sbt_0.12/1.1.1/jars/sbt-idea.jar
[warn] [NOT FOUND ] com.typesafe.sbteclipse#sbteclipse-core;2.1.1!sbteclipse-core.jar (31ms)
[warn] ==== typesafe-ivy-releases: tried
[warn] http://repo.typesafe.com/typesafe/ivy-releases/com.typesafe.sbteclipse/sbteclipse-core/scala_2.9.2/sbt_0.12/2.1.1/jars/sbteclipse-core.jar
[warn] [NOT FOUND ] org.scalastyle#scalastyle_2.9.2;0.3.1!scalastyle_2.9.2.jar (0ms)
[warn] ==== sonatype-releasess: tried
[warn] http://oss.sonatype.org/content/repositories/releases/org/scalastyle/scalastyle_2.9.2/0.3.1/scalastyle_2.9.2-0.3.1.jar
[warn] [NOT FOUND ] com.github.scopt#scopt_2.9.2;2.1.0!scopt_2.9.2.jar (0ms)
[warn] ==== sonatype-releasess: tried
[warn] http://oss.sonatype.org/content/repositories/releases/com/github/scopt/scopt_2.9.2/2.1.0/scopt_2.9.2-2.1.0.jar
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: FAILED DOWNLOADS ::
[warn] :: ^ see resolution messages for details ^ ::
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
答案 0 :(得分:0)
您是否在plugins.sbt中将本地Play存储库作为SBT解析程序?尝试将以下内容添加到plugins.sbt:
resolvers += Resolver.file("Local Play repo", file(System.getProperty("PLAY_HOME") + "/repositories/local"))(Resolver.ivyStylePatterns)
至少你应该能够在已经尝试的存储库列表中看到它。