Jenkins上的Ant脚本:资源不存在

时间:2013-02-05 14:25:17

标签: maven ant jenkins

我有一个maven项目,其结构大致如下:

sourceProject
- src
- distribution
- pom.xml

pom.xml正在构建项目并将源代码复制到分发中,包括依赖项等。源项目将提交到我们的存储库,包括空的分发文件夹。

在下游,我有一个ant build.xml,它将分发文件夹复制到目标文件夹并构建一个zip。相关命令是:

<copy todir="${buildDirectory}/features/project/root/sourceProject">
 <fileset dir="${basedir}/../sourceProject/distribution" />
</copy>

在我的本地计算机上,一切正常。但是,一旦我将它提交到我们的存储库,相应的Jenkins作业就会失败并出现以下异常:

org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-antrun-plugin:1.6:run (default) on project myProject: An Ant BuildException has occured: The following error occurred while executing this line:
/home/jenkins/mySubProject/build.xml:48: /home/jenkins/sourceProject/distribution does not exist.

我假设,我需要在sourceProject pom.xml中指定发行版,但到目前为止我的尝试失败了。

1 个答案:

答案 0 :(得分:1)

好的,实际上非常简单。错误在相对路径中。 Jenkins上的工作不是复制我们存储库的结构。来自不同作业的控制台输出的一些细节有助于理解jenkins服务器上的相对路径。