我想在本地Artifactory实例上发布带有注释的Artifactory metatada的文物,并以基于时间戳的SNAPSHOT文物版本发布版本号。
为此,我尝试使用人工的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
最佳答案
如果有人遇到同样的问题,那么问题就是存储库布局定义。我必须使用maven-2-default布局定义来发布带有时间戳和 Artifact 属性的SNAPSHOT Artifact 版本。