如何为Jenkins作业指定内部公司Maven repo?

时间:2011-12-04 09:37:03

标签: maven-2 jenkins

我正在尝试在Jenkins中设置Maven2作业。我的pom.xml中有这样的行:

<distributionManagement>
  <repository>
    <id>releases</id>
    <name>Releases</name>
    <url>http://nexus.example.com:8081/nexus/content/repositories/releases</url>
  </repository>
  ...
</distributionManagement>

尝试构建作业时出现此错误:

...
Downloading: http://repo1.maven.org/maven2/.../.../.../....jar
[INFO] Unable to find resource 'resource id goes here' in repository central (http://repo1.maven.org/maven2)
...
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Failed to resolve artifact.

Missing:
...Here goes the list of missing dependencies.

我确信nexus.example.com存储库中确实存在所需的工件,因为我可以在我的工作站上执行mvn compile,并且可以下载它们。

但Jenkins由于某种原因甚至没有尝试从本地存储库下载工件,而忽略了pom.xml中的规范。

任何想法我能尝试什么?

1 个答案:

答案 0 :(得分:1)

您可以通过两种方式解决此错误。

一,将<repositories>部分移出<distributionManagement><distributionManagement>部分用于指示您要在何处部署工件。

在jenkins运行的用户名的<repositories>中指定settings.xml部分。建议这样做,因为这将适用于您将要构建的所有项目。