可以在ant XML构建文件中包含XML文件吗?

Rob*_*t H 1 ant

当我使用Makefile时,我可以包含common.mk文件,其中我在其中定义了一些常见的定义,例如classpath等.

我想对我的build.xml文件做同样的事情.我想在我的树中的每个文件夹中创建一个build.xml,这样我就可以构建树的任何部分,而无需每次都编辑一个top build.xml来告诉它要包含什么.

这就是我用makefile做的,并且非常好,因为我可以从树中的任何文件夹中键入'make',并使用递归make,它将在我所在的地方构建树部分.

build.xml的问题在于,我发现我在每个build.xml中复制了相同的定义(例如classpath,编译器标志和what-have-you).

如果我可以包含一个xml文件,那么我可以将所有常见的东西放在common.xml文件中,在树的根目录中,并将其包含在每个build.xml中.(这是我用Makefiles做的,我把所有东西都放在了common.mk).

我不喜欢用env.用于定义事物的变量,并且更喜欢使用我用于整个树的文件,公共文件.

我是使用蚂蚁的新手,所以我可能忽略了这个功能.如果某人有一个如何做到这一点的例子,这将是有用的.

干杯,

Dan*_*n O 5

查看包含XML文件和外部Ant文件的文档:http: //ant.apache.org/faq.html#xml-entity-include

要在当前Ant文件中包含完整的Ant构建文件,您需要执行以下操作:

<?xml version="1.0"?>
<project name="test" default="test" basedir=".">

  <target name="setup">
    ...
  </target>

  <import file="./common.xml"/>

  ...

</project>
Run Code Online (Sandbox Code Playgroud)

你需要Ant 1.6或更新版本.