我对AWS CodeBuild有一点小麻烦..。我们将Github (https://github.com/ibissource/mvn-repo)上的ibis适配器框架托管为Maven存储库。
我正在使用框架作为我正在处理的项目的依赖项。在我的pom.xml文件中,我设置了version属性和存储库/依赖项。
当我在本地运行Maven构建时,它可以找到依赖项(嗯,它给出了关于不能传输元数据的警告),但是它能够构建而不会出现任何问题。
编辑:它能够构建本地文件,因为我在我的.m2存储库中缓存了这些文件。重命名文件夹后,我能够重现问题。
当我将更改提交到CodeCommit并触发CodePipeline时,一旦它到达CodeBuild,它几乎立即失败,出现以下错误:
错误]未能在项目api上执行目标:无法解决项目com.priooo: api: war:0.0.29的依赖关系:未能在org.ibissource:ibis-adapterframework-core:jar:7.0-B4-SNAPSHOT:收集依赖项,未能读取org.ibissource:ibis-adapterframework-core:jar:7.0-B4-SNAPSHOT:的工件描述符,无法将工件org.ibissource:ibis-adapterframework-core:pom:7.0-B4-SNAPSHOT从/到ibis-mvn-repo (https://github.com/ibissource/mvn-repo/raw/master/releases):收到致命警报: protocol_version ->帮助1
<properties>
<iaf.version>7.0-RC3-SNAPSHOT</iaf.version>
</properties>
<repositories>
<repository>
<id>ibis-mvn-repo</id>
<url>${ibissource.maven.repository.https}/releases</url>
</repository>
<repository>
<id>ibis-mvn-repo-snapshots</id>
<url>${ibissource.maven.repository.https}/snapshots</url>
</repository>
</repositories>在依赖项中,我有以下内容
<dependency>
<groupId>org.ibissource</groupId>
<artifactId>ibis-adapterframework-core</artifactId>
<version>${iaf.version}</version>
</dependency>
<dependency>
<groupId>org.ibissource</groupId>
<artifactId>ibis-adapterframework-larva</artifactId>
<version>${iaf.version}</version>
</dependency>
<dependency>
<groupId>org.ibissource</groupId>
<artifactId>ibis-adapterframework-webapp</artifactId>
<version>${iaf.version}</version>
<type>war</type>
</dependency>溶液
似乎Maven不喜欢Github将其重定向到原始文件。我们已经将Github更改为原始URL,它似乎解决了这个问题
<ibissource.maven.repository.https>https://raw.githubusercontent.com/ibissource/mvn-repo/master</ibissource.maven.repository.https>发布于 2018-02-26 09:46:43
当您将Maven与CodeBuild提供的CodeBuild环境一起使用时,Maven会从https://repo1.maven.org/maven2的安全中心Maven存储库中提取生成和插件依赖项。即使您的构建项目的pom.xml文件显式声明其他位置来代替使用,也会发生这种情况。
您需要用您的settings.xml替换AWS中的settings.xml。
version 0.2
phases:
install:
commands:
- cp ./settings.xml /root/.m2/settings.xmlhttps://stackoverflow.com/questions/48984763
复制相似问题