Med Ant-stödet som är inbyggt i Eclipse kan insticksprogram programmässigt köra Ant-byggfiler. Det görs via klassen AntRunner som ingår i insticksprogrammet org.eclipse.ant.core.
Följande kodstycke visar ett exempel på hur man använder AntRunner från koden i ett annat insticksprogram:
import org.eclipse.ant.core.AntRunner; import org.eclipse.core.runtime.IProgressMonitor; ... public void runBuild() { IProgressMonitor monitor = ... AntRunner runner = new AntRunner(); runner.setBuildFileLocation("c:/buildfiles/build.xml"); runner.setArguments("-Dmessage=Building -verbose"); runner.run(monitor); }
Om en förloppsövervakare används, görs den tillgänglig för de pågående åtgärderna. Mer information finns under Förloppsövervakare.
Observera att endast ett Ant-bygge kan förekomma vid en given tidpunkt om inte byggena sker i separata VM. Se AntRunner.isBuildRunning();
Varje gång en Ant-byggfil körs i Eclipse skapas en ny klassladdare. Eftersom ett bibliotek endast kan läsas in av en klassladdare i Java, kan det uppstå problem för åtgärder som använder ursprungliga bibliotek vid körning av flera byggfiler. Om den föregående klassladdaren inte rensats från skräp vid den tidpunkt då den nya klassladdaren försöker läsa in det ursprungliga biblioteket, inträffar ett undantag som indikerar problemet och bygget misslyckas. Ett sätt att undvika detta problem är att låta en klass i ett insticksbibliotek läsa in biblioteket. Denna klass kan användas av åtgärden för att accessa ursprungliga metoder. På så sätt blir biblioteket inläst av klassladdaren i insticksprogrammet och några konflikter vid inläsningen uppstår inte.