我使用sbt-lock插件并想下载最新的快照,包括-SNAPSHOT版本。当我在build.sbt中写道时
libraryDependencies += "org.consensusresearch" %% "scorex-basics" % "1.2.+"
并运行sbt relock
它只找到版本1.2.6,而1.2.7-SNAPSHOT版本可用。如何设置sbt以加载1.2.7-SNAPSHOT
版本?
答案 0 :(得分:0)
这是一个众所周知的问题,很多人都在example挣扎。
我发现唯一能够持续工作的解决方法(即尝试干净,cleanAll,更新等之后再没有运气)是使用build.sbt中的自定义任务定位并删除Ivy缓存中的依赖项,然后进行重建
lazy val nukeIvy = taskKey[Unit]("Execute rm -rf ~/ivy2/cache script")
nukeIvy := {
val s: TaskStreams = streams.value
val shell: Seq[String] =
if (sys.props("os.name").contains("Windows")) Seq("cmd", "/c")
else Seq("bash", "-c")
val removeIvy: Seq[String] = shell :+ "rm -rf ~/.ivy2/cache/com.explori"
val removeCommonCodecs: Seq[String] = shell :+ "rm -rf ~/.ivy2/cache/commons-codec"
s.log.info("nuking ivy cache...")
if ((removeIvy !) == 0 && (removeCommonCodecs !) == 0) {
s.log.success("remove com.explori from ivy cache successful!")
} else {
throw new IllegalStateException("cleanIvy failed!")
}
}