gpt4 book ai didi

sbt - 为什么 sbt 在解决后暂停?

转载 作者:行者123 更新时间:2023-12-04 18:20:04 24 4
gpt4 key购买 nike

我们的构建服务器输出如下所示

[13:24:09][Step 1/1] [info] Loading project definition from ...
[13:24:10][Step 1/1] [info] Set current project ...
[13:24:10][Step 1/1] [info] Updating {file:/Users/build/TeamCity/agents/agent1/work/6060f176dc49a319/}root...
[13:24:11][Step 1/1] [info] Resolving org.scala-lang#scala-library;2.10.4 ...
... blah blah
[13:24:16][Step 1/1] [info] Done updating.
[13:26:42][Step 1/1] [success] Total time: 146 s, completed 24-Jul-2014 13:26:42

所以完成解析步骤需要几秒钟,但在 Done updating 和下一步之间有几分钟的暂停。

知道那里发生了什么吗?

最佳答案

我不是 100% 确定它是在显示“完成更新”之前还是之后,但围绕 Ivy 解析会发生两件事:缓存和编写解析报告。更新由编译调用,因此缓存结果很重要。如果你有一个很大的依赖图,缓存输入和输出可能需要几秒钟。 Ivy 解析报告被写到 target/resolution-cache/reports/ 目录,它准确地告诉你哪些模块和工件得到了解析。这是一个为每个配置写出的大型 XML 文件,因此也可能需要几秒钟。如果您有多个具有大量依赖项的子项目,所有这些可能会增加很多秒。

我目前正在研究 sbt 中与此相关的几个功能。 Consolidated resolution如果子项目具有相当统一的依赖关系,应该可以减轻多项目构建的痛苦。使用解决报告的结果,我将生成驱逐警告。

关于sbt - 为什么 sbt 在解决后暂停?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24950994/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com