For the declaration there are several ways:
declare a single task per using instruction using
<taskdef name="taskname" classname="ImplementationClass"/>
<taskdef name="for" classname="net.sf.antcontrib.logic.For" /> <for ... />
declare a bundle of tasks using a properties-file holding these taskname-ImplementationClass-pairs and
<taskdef>
<taskdef resource="net/sf/antcontrib/antcontrib.properties" /> <for ... />
declare a bundle of tasks using a xml-file holding these taskname-ImplementationClass-pairs and
<taskdef>
<taskdef resource="net/sf/antcontrib/antlib.xml" /> <for ... />
declare a bundle of tasks using a xml-file named antlib.xml, XML-namespace and
antlib:
protocoll handler
<project xmlns:ac="antlib:net.sf.antconrib"/> <ac:for ... />
declare a single task per using instruction using
<taskdef name="taskname" classname="ImplementationClass"/>
<taskdef name="for" classname="net.sf.antcontrib.logic.For" /> <for ... />
declare a bundle of tasks using a properties-file holding these taskname-ImplementationClass-pairs and
<taskdef>
<taskdef resource="net/sf/antcontrib/antcontrib.properties" /> <for ... />
declare a bundle of tasks using a xml-file holding these taskname-ImplementationClass-pairs and
<taskdef>
<taskdef resource="net/sf/antcontrib/antlib.xml" /> <for ... />
declare a bundle of tasks using a xml-file named antlib.xml, XML-namespace and
antlib:
protocoll handler
<project xmlns:ac="antlib:net.sf.antconrib"/> <ac:for ... />