如何避免在sbt 0.13.x中重建解析器?

我们使用
maker来构建一个非常大的scala项目.编译18层项目大约需要3分钟(约30-40个模块).

我有兴趣将性能与更新的SBT进行比较,并为sbt 0.12.4创建了一个快速而脏的构建文件.尽管SBT使用并行编译,但从干净(不计算常春藤下载时间)编译同一个项目花了10分钟.

控制台输出似乎全神贯注于解决依赖关系,这些依赖关系都在我的常春藤缓存中.我偶然发现Why sbt runs dependency resolution every time after clean?它提供了一个黑客,至少可以将第二个版本加速到3.5分钟.但是,这个hack在0.13.x上不起作用.

> 0.13中的等效黑客是什么?
>还有什么办法可以加速sbt编译吗?

虽然这不是项目,但假设我的构建脚本看起来像build.scala(这个文件是我使用的模板并在第54行附近添加了黑客).

最佳答案 你去吧,加上这个.适用于我的0.13.1.

cleanKeepFiles ++= Seq("resolution-cache", "streams").map(target.value / _)
点赞