首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >gradle maven-publish插件添加时间戳,如何避免将时间戳放在后缀中

gradle maven-publish插件添加时间戳,如何避免将时间戳放在后缀中
EN

Stack Overflow用户
提问于 2019-01-14 21:51:10
回答 1查看 2.1K关注 0票数 7

我使用的是gGradle的'maven-publish‘插件,它在实际版本之后加上了一个后缀,这是我想要避免的。因为在我的CI的下一步中,它试图下载.jar,而curl命令没有下载任何内容。

我可以连接到我的节点并通过./gradlew publish Optional<VERSION=0.0.1>上传,但是插件(我想)添加了一个时间戳,看起来像这样:

代码语言:javascript
复制
a/b/c/ARTIFACT-NAME/0.0.1-SNAPSHOT/ARTIFACT-NAME-0.0.1-20190114.134142-8.jar

如何关闭插件中的时间戳功能?

这就是我的发布任务:

代码语言:javascript
复制
publishing {
    publications {
        mavenJava(MavenPublication) {
            from components.java
        }
    }
    repositories {
        maven {
            if (project.version.endsWith('-SNAPSHOT')) {
                url deployNexusSnapshotUrl
            } else {
                url deployNexusReleaseUrl
            }
            credentials {
                username = deployNexusUsername
                password = deployNexusPassword
            }
        }
    }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-01-14 21:59:00

这是因为您要发布的是SNAPSHOT版本。此时间戳是一个功能,允许区分不同的快照构建,例如,在有限的时间段内使用它们,并在稍后清除它们。当您发布一个不使用-SNAPSHOT后缀的适当工件版本时,就不会发生这种情况。

为了CI构建的可重复性,当您在CI上构建软件时,您不应该使用SNAPSHOT依赖项。可以覆盖SNAPSHOT版本,尤其是在禁用版本中的时间戳的情况下。

如果您的项目中没有代码更改,CI构建是绿色的,但是第二天有人在存储库中覆盖了SNAPSHOT依赖项,并且构建现在是红色,该怎么办?如果第二天你不得不发布一个修补程序来解决紧急的生产问题,但是你不得不专注于新的SNAPSHOT依赖引入的问题,那该怎么办呢?

您正在尝试解决错误的问题。SNAPSHOT仅用于本地开发。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54182823

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档