The master build file is generated by the JAM plugin and is used for building multi-module projects in the correct order.
The master build should be imported into your top-level build file which can be as simple as:
<project name="top-level" default="default" basedir=".">
<description>
+ ==\_/============J=A=V=A=G=E=N===A=N=T===M=O=D=U=L=E=S================= +
+ \(_)/ +
+ -(_)- Top-level Multi-Module Build File +
+ /(_)\ +
+ ======================================================================= +
+ Copyright (c) 2002-2005 Outsource Cafe, Inc. All rights reserved. +
+ ======================================================================= +
+
</description>
<!-- =================================================================== -->
<!-- imports -->
<!-- =================================================================== -->
<import file="${basedir}/src/jam/master-build.xml"/>
</project>
The following example was generated for the JavaGen Petstore example project.
<?xml version="1.0" encoding="UTF-8"?>
<project name="master">
<description>
+ ==\_/============J=A=V=A=G=E=N===A=N=T===M=O=D=U=L=E=S================= +
+ \(_)/ +
+ -(_)- Master Build File +
+ /(_)\ +
+ ======================================================================= +
+ = Copyright (c) 2002-2005 Outsource Cafe, Inc. All rights reserved. = +
+ ======================================================================= +
+ ! GENERATED ! GENERATED ! GENERATED ! GENERATED ! GENERATED !
+
+ This file was generated from a Maven POM (Project Object Model)
+ project.xml file. To regenerate using Maven type:
+
+ maven jam:master
+
+ The master-build.xml file will build sub-projects in the correct order
+ based on POM dependencies. This file should be imported into your
+ top-level build.xml file and regenerated whenever a POM file is updated
+ within your project.
+
+ To install the JavaGen Maven plugin for generating this file, drop the
+ plugin (maven-jam-plugin.jar) into C:\dev\maven-1.0.2/plugins folder.
+
+ Ant 1.6 or newer is required.
+
+ Source POM: javagen-petstore, version 1.3, Date: February 15 2005, time: 0740
+
+ =J=A=M===========================================J=A=V=A=G=E=N=.=C=O=M= +
</description>
<!--=====================================================================-->
<!--Sub-projects ordered to build without dependency conflicts-->
<!--=====================================================================-->
<property name="ordered-subtargets" value="ejb-module/build.xml,web-module/build.xml,ear/build.xml,"/>
<!--===================================================================-->
<!--macro to call targets on all sub-projects-->
<!--===================================================================-->
<macrodef name="subant.macro">
<attribute default="" name="target"/>
<attribute default="${basedir}" name="dir"/>
<attribute default="${ordered-subtargets}" name="includes"/>
<attribute default="target/,lib/,dist/,src/,src-gen/,src-gen-dups/,src-gen-old/" name="excludes"/>
<sequential>
<subant target="@{target}">
<fileset dir="@{dir}" includes="@{includes}" excludes="@{excludes}"/>
</subant>
</sequential>
</macrodef>
<!--===================================================================-->
<!--global targets-->
<!--===================================================================-->
<target name="clean" description="clean build files">
<subant.macro target="clean"/>
</target>
<target name="dist" description="create distribution files">
<subant.macro target="repo"/>
</target>
<target name="repo" description="place distribution in repository">
<subant.macro target="repo"/>
</target>
<target name="default" description="calls: clean, dist" depends="clean, dist"/>
</project>