【问题标题】:Can Maven ref a parent POM from a private s3 bucket?Maven 可以从私有 s3 存储桶引用父 POM 吗?
【发布时间】:2014-10-03 04:40:14
【问题描述】:

当使用 私有 AWS S3 存储桶作为 Maven 存储库时,有许多工作 s3 wagon 提供程序可以很好地使用 s3://[bucket]/folder 协议部署和拉取依赖项.

但是,当您尝试使用父 POM 引用执行此操作时,即

  <parent>
    <groupId>com.my.company</groupId>
    <artifactId>my-parent-pom</artifactId>
    <version>1.0.0</version>
  </parent>

仅存在于私有 S3 Maven 存储库中,Maven 似乎只检查基于 HTTP 的已定义存储库,而不尝试查看 S3 存储库。

本项目中的S3 wagon定义为

<build>
<extensions>
  <extension>
    <groupId>org.springframework.build</groupId>
    <artifactId>aws-maven</artifactId>
    <version>5.0.0.RELEASE</version>
  </extension>
</extensions>
</build>

这同样适用于普通依赖项,但不适用于父 POM 引用

寻找某种方法在 S3 Maven 存储库中正确解析父 POM

【问题讨论】:

    标签: java maven amazon-s3 parent-pom wagon


    【解决方案1】:

    根据我对该线程中其他帖子的评论:如果您使用的是Maven 3.2.5 or later,则可以在命令行上将插件指定为 JAR。

    如果您使用的是 Maven 3.3.1 或更高版本,请在您的项目中创建一个定义 S3 wagon 的 .mvn/extensions.xml 文件,以便在解析父 POM 时预加载它。

    详见 Maven 的 3.3.1 发行说明: https://maven.apache.org/docs/3.3.1/release-notes.html

    【讨论】:

      【解决方案2】:

      答案是否定的。

      Maven 和 S3 存储库的主要问题是 Maven 在 S3 wagon 之前加载父 POM。

      查看详情:http://www.sonatype.org/nexus/2015/03/03/why-s3-is-not-the-perfect-maven-repository/

      【讨论】:

      猜你喜欢
      • 2018-01-14
      • 2018-12-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-02
      • 2019-01-25
      • 2017-03-19
      • 2017-04-12
      相关资源
      最近更新 更多