【问题标题】:MVN release fails with "Repository does not allow updating assets: releases" when it should notMVN 发布失败并显示“存储库不允许更新资产:发布”
【发布时间】:2019-03-01 12:04:45
【问题描述】:

我们有一个多模块项目,我们想使用以下命令对其进行发布

mvn release:prepare release:perform -B -e   -X

失败了

07:54:12 [INFO] Caused by: org.eclipse.aether.transfer.ArtifactTransferException: 
 Could not transfer artifact ch.test.sub:my-app:pom:2019.02.07 from/to 
 release-repo (https://nexus.intra/content/repositories/releases/): 
Failed to transfer file: 
 https://nexus.intra/content/repositories/releases/ch/test/sub/my-app/2019.02.07/my-app-2019.02.07.pom. 
 The return code is 400, ReasonPhrase: Repository does not allow updating assets: releases.

信息很清楚,但有些事情没有加起来

  1. 启动 maven 时,my-app-2019.02.07.pom 不在关联中
  2. 我检查了日志,只有一个“Uploading to release-repo”发生,即构建过程失败并显示上述消息

    07:54:11 [INFO] [INFO] Uploading to release-repo: 
    https://nexus.intra/content/repositories/releases/ch/test/sub/my- 
    app/2019.02.07/my-app-2019.02.07.pom
    
  3. 此时,我可以观察到 Nexus 存储库中有一个my-app-2019.02.07.pom

当 - 根据日志 - 没有上传时,它是如何到达那里的?

pom.xml maven 启动前

...
    <parent>
        <groupId>ch.test</groupId>
        <artifactId>my.app</artifactId>
        <version>2019.02.07-SNAPSHOT</version>
        <relativePath>../pom-parent</relativePath>
    </parent>
...

版本信息

  • Apache Maven 3.5.4
  • Java 版本:1.8.0_201
  • 操作系统名称:“windows server 2016”,版本:“10.0”,arch:“amd64”,家族:“windows”

【问题讨论】:

    标签: maven maven-3 nexus3


    【解决方案1】:

    我遇到了这个问题并通过手动删除上传的 pom 文件来解决,在我的情况下,它在 pom 上传后遇到了问题,导致发布失败。随后在 mvn release:perform 的尝试失败了,因为该 pom 已经存在。 此处记录了解决此问题的另一种方法Gradle Upload Fails But Still Deploys to Nexus

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-02-19
      • 2014-12-05
      • 1970-01-01
      • 2022-10-04
      • 2015-11-25
      • 2019-06-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多