gpt4 book ai didi

java - "Broken"本地存储库 - 我如何注意到?我怎样才能阻止它发生?

转载 作者:行者123 更新时间:2023-12-02 12:31:00 25 4
gpt4 key购买 nike

我们的构建服务器的本地存储库包含 Artifact 快照版本的不一致数据。即使为 mvn 设置了 -u,这也会导致构建服务器加载较旧的时间戳版本。

这种行为让我担心。同事提示说你“不能信任 Maven 构建”。我需要为此做点什么。

当然,我可以为每个构建重新加载每个 Artifact (本质上忽略本地存储库),但这会花费不必要的时间。

有没有办法确定本地存储库是否“损坏”?

(请不要建议我们不要在构建服务器上使用快照 - 我们需要至少再这样做一年。)

编辑:

  • 我们的构建服务器是 Quickbuild,但它应该不会太重要,因为它只是检查代码然后调用 Maven。
  • 不一致的形式是以 -SNAPSHOT 结尾的文件(pom、jar 等)的年龄不同。它应该保留一份副本,但我没有,所以我无法提供更多细节。
  • 本地存储库为大约 2000 个独立 Java 项目的所有构建共享。

最佳答案

作为评论中讨论的总结:您似乎有 2000 个单独的构建从同一个本地 Maven 存储库(构建服务器中的一个目录)读取和安装。这只是要求并发问题,因为本地maven存储库只是一个目录结构,缺乏任何机制来处理目录结构的并发更新。

通常要做的是构建特定于作业的本地存储库和处理共享数据的单独存储库管理器。所有创建的 Artifact 都将上传到存储库管理器,该管理器也处理并发请求。如果我是你,这就是我的目标。

如果您坚持对 Artifact 进行本地文件级共享,那么这些 Artifact 至少应该只是从存储库管理器获取的 Artifact ,而不是本地生成的快照 Artifact ,因为这会导致并发问题。

关于java - "Broken"本地存储库 - 我如何注意到?我怎样才能阻止它发生?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45299202/

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