使用SBT重新下载SNAPSHOT版本的依赖项

zig*_*tar 30 scala sbt

我的build.sbt文件中有以下几行.

resolvers += "specs2 snapshot repo" at "http://scala-tools.org/repo-snapshots"

libraryDependencies += "org.specs2" %% "specs2" % "1.7-SNAPSHOT" % "test"
Run Code Online (Sandbox Code Playgroud)

现在,如果快照已经改变(这是否合理,maven SNAPSHOT版本在没有版本号改变的情况下发生变化?),我该如何告诉sbt下载新版本?使用update什么都不做.

Dav*_*vid 54

你应该试试 :

libraryDependencies += "org.specs2" %% "specs2" % "1.7-SNAPSHOT" % "test" changing()
Run Code Online (Sandbox Code Playgroud)

changing()将指定依赖项可以更改,并且常春藤必须在每个上下载它update.

也许您也可以尝试使用定义您的存储库ivyXML.像这样的东西:

ivyXML :=
  <resolvers>
        <ibiblio name="specs2 snapshot repo" changingPattern="*-SNAPSHOT" m2compatible="true" root="http://scala-tools.org/repo-snapshots"/>
  </resolvers>
Run Code Online (Sandbox Code Playgroud)

希望这会有所帮助.

  • 至少在0.12.1中,您不需要指定更改:http://www.scala-sbt.org/release/docs/Detailed-Topics/Dependency-Management-Flow.html最后一行:"有不需要将SNAPSHOT依赖项标记为changing(),因为sbt配置Ivy已经知道了." (7认同)
  • 我希望不必指定此选项,但可以从*SNAPSHOT*字符串中输入.请问sbt/ivy只检查校验和,如果jar没有改变,请不要再次下载? (2认同)