Hi Jan,
You need to know that subant.html is autogenerated.
Although it has not been generated in a while...
Peter
[EMAIL PROTECTED] wrote:
jhm 2004/09/01 09:10:57
Modified: docs/manual/CoreTasks Tag: ANT_16_BRANCH subant.html
Log:
Complex example
Revision Changes Path
No revision
No revision
1.7.2.5 +68 -6 ant/docs/manual/CoreTasks/subant.html
Index: subant.html
===================================================================
RCS file: /home/cvs/ant/docs/manual/CoreTasks/subant.html,v
retrieving revision 1.7.2.4
retrieving revision 1.7.2.5
diff -u -r1.7.2.4 -r1.7.2.5
--- subant.html 12 Dec 2003 10:52:18 -0000 1.7.2.4
+++ subant.html 1 Sep 2004 16:10:57 -0000 1.7.2.5
@@ -1,4 +1,4 @@
-
+
<html>
<head>
<meta http-equiv="Content-Language" content="en-us">
@@ -115,9 +115,9 @@
<font color="#000000" size="-1" face="arial,helvetica,sanserif"><b>Requirement</b></font>
</td>
</tr>
- <!-- Attribute Group -->
-
- <!-- Attribute Group -->
+ <!-- Attribute Group -->
+
+ <!-- Attribute Group -->
<!-- Attribute -->
<tr>
<td bgcolor="#eeeeee" valign="top" align="left">
@@ -411,6 +411,68 @@
setting the basedir to projects1, projects2, projects3
</p>
+ <!-- manually written -->
+ <p>Now a little more complex - but useful - scenario. Assume that we have
+ a directory structure like this:</p>
+ <pre>
+ root
+ | common.xml
+ | build.xml
+ |
+ +-- modules
+ +-- modA
+ | +-- src
+ +-- modB
+ +-- src
+
+ <u><b>common.xml:</b></u><br>
+ <project>
+ <property name="src.dir" value="src"/>
+ <property name="build.dir" value="build"/>
+ <property name="classes.dir" value="${build.dir}/classes"/>
+
+ <target name="compile">
+ <mkdir dir="${classes.dir}"/>
+ <javac srcdir="${src.dir}" destdir="${classes.dir}"/>
+ </target>
+
+ <!-- more targets -->
+ </project>
+
+ <u><b>build.xml:</b></u><br>
+ <project>
+
+ <macrodef name="iterate">
+ <attribute name="target"/>
+ <sequential>
+ <subant target="@{target}">
+ <fileset dir="modules" includes="*/build.xml"/>
+ </subant>
+ </sequential>
+ </macrodef>
+
+
+ <target name="compile">
+ <iterate target="compile"/>
+ </target>
+
+ <!-- more targets -->
+ </project>
+
+ <u><b>modules/modA/build.xml:</b></u><br>
+ <project name="modA">
+ <import file="../../common.xml"/>
+ </project>
+ </pre>
+
+ <p>This results in very small buildfiles in the modules, maintainable
+ buildfile (common.xml) and a clear project structure. Additionally
+ the root buildfile is capable to run the whole build over all
+ modules.
+ </p>
+
+ <!-- manually written -->
+
</blockquote></td></tr>
</table>
@@ -430,7 +492,7 @@
<tr>
<td>
<div align="center"><font color="#525D76" size="-1"><em>
- Copyright © 2000-2003, Apache Software Foundation
+ Copyright © 2000-2004, Apache Software Foundation
</em></font></div>
</td>
</tr>
@@ -438,4 +500,4 @@
</table>
</body>
-</html>
+</html>
\ No newline at end of file
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]