gpt4 book ai didi

java - 从 Maven 远程存储库中删除版本

转载 作者:行者123 更新时间:2023-12-02 08:42:21 32 4
gpt4 key购买 nike

我目前正在开发我的第一个 Maven 项目,并且在 Maven 版本控制方面遇到了一些困惑。据我了解,在开发新版本时,应在版本号中使用 SNAPSHOT 关键字。我也明白非 SNAPSHOT 版本应该只发布一次。

我想知道是否可以从 Maven 远程存储库中删除旧版本。例如,如果我不想再下载 1.0.2 版本,我该怎么办?

此外,假设我正在开发 1.0-SNAPSHOT 版本。当我部署 1.0 版本时,最后一个 1.0-SNAPSHOT 版本是否会被删除/替换为其非 SNAPSHOT 对应版本?

最佳答案

对此的简单回答:发布版本(没有快照)是不可变的。这包括它将永远保留。

原因是:

If someone uses your version 1.0.2 and you simply can delete it those > builds will fail without an obvious reason.

关于您提到的事情的一句话:

I also understand that a non SNAPSHOT version should only be released once.

您不能两次发布同一版本。永远不可能也不应该。这意味着您将覆盖改变行为的现有版本。这也可能会破坏其他构建。

您可以看一下例如 https://search.maven.org/artifact/javax.mail/mail您会发现已有超过十五年历史的文物。它们永远不会被删除,因为可能有人正在使用它们。

如果您的版本 1.0.2 出现问题,只需创建一个新版本 1.0.3 即可修复这些问题。版本号应遵循 semantical versioning .

如果您在开发期间运行版本 1.0-SNAPSHOT 并在 1.0 发布期间发布它(通常通过 maven-release-plugin ),通常是 1.0-SNAPSHOT 版本将被自动删除。因此 1.0-SNAPSHOT 不再可用。这是 Maven 存储库管理器的默认配置。

关于java - 从 Maven 远程存储库中删除版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61304109/

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