【发布时间】:2020-06-15 11:21:42
【问题描述】:
我正在 Azure DevOps 中开发一个项目,并且按照文档中的建议,我创建了一个以 maven Central 作为上游源的 Artifacts Feed 来存储我的所有依赖项(我现在真的不需要发布工件) .
所以我将本地 maven 配置为从我的提要而不是 maven Central 获取所有依赖项,并且一切正常,除了与 maven Central 相比它非常慢。
当我从本地计算机上的空 .m2 开始时,从 maven Central 下载依赖项时构建项目需要 1 分 15 秒,但从Feed(已包含所有依赖项)。
我可以接受,因为所有内容的下载只发生在第一次构建时。
但问题是从 Azure Pipelines 构建我的项目时速度也较慢,这是我真的没想到的,因为它是从 Azure 到 Azure 的连接,并且在同一个组织内。在这种情况下,使用 feed 而不是 maven central 至少需要两倍的时间。每次构建都是如此,因为 Azure Pipelines 每次构建时都会为您提供一个新的 VM(我使用的是托管代理),因此在这种情况下没有依赖项缓存。
这真的很烦人,因为我的项目到目前为止只是一个 HelloWorld,所以它只会随着时间的推移变得更糟。
根据 Maven 和 Azure,使用存储库管理器/提要是最佳实践,但在这一点上,我真的在考虑采用从 maven Central 而不是我的提要获取所有内容的糟糕做法,至少在我的管道,以提高性能。
只有我一个人有这个问题吗?您对此有何看法?
【问题讨论】:
标签: azure maven azure-devops azure-pipelines