Ant поставляется с дополнительным API, так что вы можете создать вашу собственную задачу, написав его на Java. Вы можете найти полное описание в официальной документации ANT и в опубликованных книгах по Ant.

В качестве альтернативы вы можете просто писать Java программы и вызывать ее из Ant. Этот способ не требует изучения дополнительного API. Например, чтобы скомпилировать код в этой книги, нам нужно проверить версию Java, чтобы пользователь использовал Java 1.3 или более позднюю, так что мы можем создать следующую программу:

//: com:bruceeckel:tools:CheckVersion.java
// {RunByHand}
package com.bruceeckel.tools;

public class CheckVersion {
  
public static void main(String[] args) {
     
String version = System.getProperty("java.version");
     
char minor = version.charAt(2);
     
char point = version.charAt(4);
     
if (minor < '3' || point < '0')
        
throw new RuntimeException("JDK 1.3.0 or higher "
              
+ "is required to run the examples in this book.");
      System.out.println
("JDK version " + version + " found");
  
}
}
// /:~

Здесь просто используется System.getProperty( ) для определения версии Java, и выбрасывается исключение, если она ниже, чем 1.3. Когда Ant обнаруживает исключение, он останавливает. Теперь вы можете включить следующий текст в любой файл построения, в котором вы хотите проверять номер версии:

<java
  taskname=
"CheckVersion"
 
classname="com.bruceeckel.tools.CheckVersion"
 
classpath="${basedir}"
 
fork="true"
 
failonerror="true"
/>

Если вы используете этот подход для добавления инструментов, вы можете написать его и быстро проверить его, и если это оправдано, вы можете затратить дополнительные силы и написать дополнительные расширения Ant.