Gradle/Maven 在没有可用版本时下载快照
Gradle/Maven download snapshot when no release available
使用我们的系统CI/CD,只有在测试组件时才会发布库。在此之前,这些库将作为带有后缀 '-SNAPSHOT'
.
的快照进行维护
当我的 gradle
和 maven
项目依赖于这些库来下载特定版本的快照时,当该版本的发布不可用时,我该如何制作?
Maven 不支持这样的东西。如果您指定 1.2.3 版本,那么它期望在您的工件存储库中有 1.2.3 的发布版本。
1.2.3-SNAPSHOT 与 1.2.3 不同,意味着版本可以更改(因此 maven 检查更新)- 对于发布,maven 不需要检查更新,因为发布应该是根据定义是不可变的(因此无需检查更新)。
这可能看起来很烦人,但如果您指定版本,您将在构建中获得可重复性 - 这将有助于稳定您的开发过程。
你应该检查 versions maven 插件,你可以做的是,将 *X.Y.Z-SNAPSHOT*
放在你的依赖项中,并在发布你的工件时删除 -SNAPSHOT 后缀。到这个时候 X.Y.Z 版本应该发布了。版本插件有很多目标可以满足您的要求。
使用我们的系统CI/CD,只有在测试组件时才会发布库。在此之前,这些库将作为带有后缀 '-SNAPSHOT'
.
当我的 gradle
和 maven
项目依赖于这些库来下载特定版本的快照时,当该版本的发布不可用时,我该如何制作?
Maven 不支持这样的东西。如果您指定 1.2.3 版本,那么它期望在您的工件存储库中有 1.2.3 的发布版本。
1.2.3-SNAPSHOT 与 1.2.3 不同,意味着版本可以更改(因此 maven 检查更新)- 对于发布,maven 不需要检查更新,因为发布应该是根据定义是不可变的(因此无需检查更新)。
这可能看起来很烦人,但如果您指定版本,您将在构建中获得可重复性 - 这将有助于稳定您的开发过程。
你应该检查 versions maven 插件,你可以做的是,将 *X.Y.Z-SNAPSHOT*
放在你的依赖项中,并在发布你的工件时删除 -SNAPSHOT 后缀。到这个时候 X.Y.Z 版本应该发布了。版本插件有很多目标可以满足您的要求。