【问题标题】:how to avoid rebuilding the resolvers in sbt 0.13.x?如何避免在 sbt 0.13.x 中重建解析器?
【发布时间】:2014-02-03 02:51:25
【问题描述】:

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

我有兴趣将性能与更新的 SBT 进行比较,并为 sbt 0.12.4 创建了一个快速而肮脏的构建文件。尽管 SBT 使用并行编译,但从 clean 编译同一个项目需要 10 分钟(不包括 ivy 下载时间)。

控制台输出似乎专注于解决依赖关系,这些依赖关系都在我的常春藤缓存中。我偶然发现了Why sbt runs dependency resolution every time after clean?,它提供了一个技巧,至少可以将第二次构建速度提高到 3.5 分钟。但是,此 hack 不适用于 0.13.x。

  1. 0.13 中的等效 hack 是什么?
  2. 还有什么其他方法可以加快sbt 的编译速度吗?

虽然这不是项目,但出于所有意图和目的,假设我的构建脚本类似于 build.scala(这个文件是我使用的模板,并在第 54 行附近添加了 hack)。

【问题讨论】:

    标签: sbt


    【解决方案1】:

    给你,添加这个。在 0.13.1 上为我工作。

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

    【讨论】:

      猜你喜欢
      • 2018-03-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-06
      • 2018-06-20
      • 2017-09-24
      • 2013-12-29
      • 1970-01-01
      相关资源
      最近更新 更多