【问题标题】:Search if file exists in Nexus搜索 Nexus 中是否存在文件
【发布时间】:2019-02-04 04:39:25
【问题描述】:

我正在使用 Nexus 来存储从 maven(以及 gradle)生成的工件。

当我尝试使用 Jenkins 自动化该过程时,我想在上传文件之前检查文件是否存在。我为 Maven 找到了 this plugin,但它仅在您执行正常的“mvn install”时才有效(执行“mvn clean install”失败)。

我也检查了nexus search api,但管理该请求和来自 jenkinsfile 的响应似乎有点复杂。

有没有人知道另一种方法来实现这一点?

【问题讨论】:

    标签: maven jenkins gradle jenkins-pipeline nexus


    【解决方案1】:

    由于您知道工件的坐标,因此您可以直接向 nexus 询问将返回 404 NOT FOUND 文件不存在的文件,请使用 URL:http://{nexus.hostname}/repository/{repository.name}/{group.id}/{artifact.id}/{version}/{artifact.id}-{version}.jar 你不必须实际下载文件,而是使用 HEAD 请求。

    或者,您可以将存储库的部署策略更改为禁用重新部署,任何部署现有工件的尝试都将失败,因此您将获得与您相同的结果'正在尝试。

    【讨论】:

    • 如果您需要检查快照,第二个选项实际上并不适用。 HEAD 请求似乎是 IMO 的最佳选择。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-01-16
    • 2016-03-07
    • 1970-01-01
    • 2015-07-01
    • 2021-02-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多