以下是一些一般性准则(不是规则,Ant非常宽松):
- 通常将build.xml设计为在特定项目上运行,因此不会在其他构建中“导入”它。
- 该
import
任务通常用于共享一些常见的构建机制,而不是像您正在执行的那样构建工作流。例如,要构建jar的目标,可以通过一些属性(例如目标目录)进行参数化。 - 在
subant
和ant
任务,优选用于触发建立其他项目
因此,这看起来像项目D的build.xml:
<project name="CommonJava" default="makeCommonJavaJar" basedir="."> <target name="build-deps"> <ant antfile="../Common/build.xml" target="makeCommonJar"/> <ant antfile="../CommonAndroid/build.xml" target="makeAndroidJar"/> </target> <target name="makeCommonJavaJar" depends="build-deps"> <mkdir dir="build" /> <jar jarfile="./build/commonjava.jar" includes="*.class" /> </target></project>
参见http://ant.apache.org/manual/Tasks/ant.html



