# Using build configurations with Ant

The format used in .ajproperties files is that of standard properties files. If want to build your Eclipse projects using Ant, you can either convert your .ajproperties files to the old .lst format, or you can process the .ajproperties files directly. Below is a snippet from an example build.xml file which reads the src.includes and src.excludes properties from a .ajproperties file and passes them to the iajc Ant task.

`
<property file="tracelib.ajproperties"/>
<target name="compile" >
<iajc srcdir="."
includes="${src.includes}" excludes="${src.excludes}"
fork="true"/>
<forkclasspath>
<pathelement .../>
...
</target>
`

Note that there is a limitation here in that Ant processes the includes and excludes in a slightly different way to Eclipse. For example if you include “lib/AbstractTracing.java” but exclude “lib/” then as a build configuration in Eclipse, the source file will be an included entry in an otherwise excluded package. Ant processes the includes first, then removes the matching excludes, so everything under “lib/” will be excluded (thus overriding the include entry).

AspectJ projects
Build configurations

Creating a new Ant build file
Creating an Ant build file for an AspectJ plug-in
Creating a new build configuration
Editing a build configuration
Switching build configurations
.lst file support