artifactory gradle 插件覆盖快照版本

Posted

技术标签:

【中文标题】artifactory gradle 插件覆盖快照版本【英文标题】:artifactory gradle plugin overwrite snapshot versions 【发布时间】:2017-06-02 14:34:06 【问题描述】:

我想在我的本地 Artifactory 实例上发布人工制品,带有带注释的人工制品元数据,以及基于 SNAPSHOT 人工制品版本的时间戳的版本号。

为此,我尝试使用 artifactory gradle 插件和 maven-publish 插件。

但是,(据我所知)在使用 maven-publish 插件时无法注释 Artifactory 元数据。

如果我使用工件 gradle 插件,我会在发布给定工件的两个不同 SNAPSHOT 版本时收到错误“没有足够的权限覆盖工件...”。

事实上,artifactoryPublish 任务试图覆盖现有的人工制品,而不是使用时间戳。

请注意,我的 Artifactory 存储库已正确设置(版本号基于时间戳)。因此,如果我使用 maven-publish 插件,不会引发错误(工件是带有时间戳的,并且没有进行覆盖)。

有人熟悉这些问题吗?

我在这里使用了一个项目示例: https://github.com/JFrogDev/project-examples/tree/master/gradle-examples/4/gradle-example-minimal

我对其进行了一些修改以适应我的本地配置。

我正在使用以下工件插件: org.jfrog.buildinfo:build-info-extractor-gradle-uber:4.4.14

【问题讨论】:

【参考方案1】:

如果有人遇到同样的问题,问题是存储库布局定义。我必须使用 maven-2-default 布局定义来发布带有时间戳和工件属性的 SNAPSHOT 工件版本。

【讨论】:

以上是关于artifactory gradle 插件覆盖快照版本的主要内容,如果未能解决你的问题,请参考以下文章

使用 Gradle-Artifactory 插件发布子项目

Jenkins Artifactory 插件(gradle)不从 gradle.properties 读取版本

Gradle Artifactory 插件不生成 Pom 文件

没有使用 jenkins gradle artifactory 插件部署的工件

如何让 Teamcity Artifactory 插件在 Gradle 中调用 bootJar 而不是 Jar?

如何从自定义插件设置 Gradle Artifactory Publish 插件默认配置/属性