1

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

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

这就是我使用 makefile 的方式,非常好,因为我可以从树中的任何文件夹中键入“make”,并使用递归 make,它将在我所在的位置下方构建树部分。

build.xml 的问题在于,我发现我在每个 build.xml 中都重复了相同的定义(例如类路径、编译器标志和你有什么)。

如果我可以包含一个 xml 文件,那么我可以将所有常见的东西放在 common.xml 文件中,在树的根目录中,并将其包含在每个 build.xml 中。(这就是我对 Makefile 所做的,我将所有内容放在 common.mk 中)。

我不喜欢使用环境。变量来定义事物,并且更喜欢使用一个文件,一个公共文件,我用于整个树。

我是使用 ant 的新手,所以我可能忽略了这个功能。如果有人也有一个如何做到这一点的例子,这将很有用。

干杯,

4

1 回答 1

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>

您将需要 Ant 1.6 或更高版本。

于 2012-04-18T15:30:09.630 回答