Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从自己的目录运行ant文件_Java_Ant - Fatal编程技术网

Java 从自己的目录运行ant文件

Java 从自己的目录运行ant文件,java,ant,Java,Ant,我有一个用于构建环境的大型ANT脚本:total-build.xml。 它调用了一堆小build.xml文件 但是,每个build.xml文件都设计为在其目录中运行。 例如: (Project)Build: total-build.xml (Project)A: build.xml (Project)B: build.xml (Project)C: build.xml total-build.xml看起来有点像: \build.xml的格式如下所示: <copy dir="src"

我有一个用于构建环境的大型ANT脚本:total-build.xml。 它调用了一堆小build.xml文件

但是,每个build.xml文件都设计为在其目录中运行。 例如:

(Project)Build: total-build.xml
(Project)A: build.xml
(Project)B: build.xml
(Project)C: build.xml
total-build.xml看起来有点像:

\build.xml的格式如下所示:

<copy dir="src" todir="dest"/>
<project name="main" default="help" basedir="..">

...

</project>

也就是说,它包含假定在A下的相对路径。在本例中,我希望
src==A\src

我不想写绝对路径,因为它们让事情变得不雅观

那么,有没有一种方法可以告诉ant从自己的目录运行build.xml文件呢


令人惊讶的是,我在谷歌上找不到关于这个问题的任何信息。

您可以对每个构建的项目标记使用base dir属性,如下所示:

<copy dir="src" todir="dest"/>
<project name="main" default="help" basedir="..">

...

</project>

...

并使用所有相关路径。

如果您可以提供有关您的
total build.xml
文件如何调用其他
build.xml
文件的目标的更多详细信息,这将非常有用。