0

我有一个 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 中指定分发,但是到目前为止我的尝试失败了。

4

1 回答 1

1

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

于 2013-02-05T14:41:40.560 回答