0
当我编译sbt-scala项目时,对于每个编译,sbt正在下载或解析jar,即使该jar在.ivy2
缓存中可用,并且它需要花费很长时间进行组装。SBT每次编译代码时下载或解析Jar
当我使用Maven,依赖解析一旦完成,该组件将永远不会尝试,如果存在.M2
下载相同的依赖,所有项目将涉及从.M2
依赖直接
请告诉我有什么办法停止该解决方案或下载该缓存时已有的jar在.ivy2
缓存中。
当我编译sbt-scala项目时,对于每个编译,sbt正在下载或解析jar,即使该jar在.ivy2
缓存中可用,并且它需要花费很长时间进行组装。SBT每次编译代码时下载或解析Jar
当我使用Maven,依赖解析一旦完成,该组件将永远不会尝试,如果存在.M2
下载相同的依赖,所有项目将涉及从.M2
依赖直接
请告诉我有什么办法停止该解决方案或下载该缓存时已有的jar在.ivy2
缓存中。
可以SBT设置为脱机工作:
脱机时:= TRUE,远程快照将不会受分辨率,甚至明确要求更新进行更新。这应该有效地支持没有连接到远程存储库的工作。可重现的例子表明赞赏。显然,更新必须在离线前成功运行。
从docs
报价如果你可以跳过更新阶段。形成SBT壳:
设定跳过更新:=真
如果你想只使用缓存的神器添加到您的build.sbt
updateOptions := updateOptions.value.withCachedResolution(true)
我个人的偏好是到override default repos并添加我的本地maven回购(因此解决方案发生但快速)
有人已经去really far与此pr设置一个巨大的堆栈(有趣但没有建议)
我试着给** offline:= true **在build.sbt中,问题没有解决。在编译项目时,它试图从外部回购下载。 –
尝试使用交互模式,并从set shell中设置值> set offline:= true – Sammyrulez
我也尝试过。我使用./sbt进入交互式shell,并将set设置为offline:= true。但不幸的是,它仍在试图解决已经存在的依赖关系。 [info]解决com.cloudera.cdh#cdh-root; 5.3.8 ... –