La ejecución de Ant es relativamente sencilla, dentro del directorio bin
de la instalación de Ant se encuentran los archivos de arranque en forma de "scripts" para Shell. El comando ant
ejecuta Ant sobre los parámetros del archivo build.xml descrito a continuación ; por "Default" el comando ant
utiliza el archivo build.xml encontrado en el directorio de ejecución.
build.xml es el archivo principal de configuración para Ant, dentro de éste se definen las diversas tareas de ejecución ("targets") de un proyecto, estas tareas de ejecución ("targets") pueden variar desde compilación de clases, creación de archivos ZIP, creación y copiado de directorios,etc.; a través de estas mismas tareas ("targets") pueden ser definidas dependencias que permiten dar orden de ejecución al proyecto.
La estructura de build.xml es la siguiente:
<?xml version="1.0"?> <project default="init" basedir="."> <target name="init"> .... .... .... </target> <target name="html" depends="init"> .... .... .... </target> <target name="wml" depends="init"> .... .... .... </target> <target name="pdf" depends="init"> .... .... .... </target> <target name="todo" depends="html,wml,pdf"> .... .... .... </target> </project> |
La primer linea de build.xml define que se trata de un archivo XML, posteriormente se inicia el elemento <project>
, dentro de este elemento deben incluirse todas las tareas ("targets") que serán definidas para el proyecto en cuestión. El parámetro default="init"
de <project>
indica que la tarea llamada init
será la primera en ser ejecutada, esto es, si se ejecuta el comando ant
sin ningún parámetro serán realizadas las tareas definidas dentro de init
; el parámetro basedir="."
de <project>
define que el directorio raíz de todas las tareas ("targets") es relativo al directorio actual (.
).
Como ya fue mencionado, las tareas ("targets") definidas en Ant pueden oscilar desde compilación hasta creación de archivos ZIP. Cada tarea ("target") es definida dentro de los elementos <target>
, dichas tareas deben poseer un nombre que las identifique inequívocamente, este nombre permite ejecutar las tareas ("targets") de la linea de comandos. Además, a través de este mismo nombre es posible definir dependencias entre las diversas tareas ("targets"); si observa el archivo build.xml
anterior estas dependencias se definen a través del parámetro depends
.
Para ilustrar el uso de tareas ("targets") y dependencias, en la siguiente sección de esta guia se describe paso a paso la utilización de Ant para compilar diversas clases Java y crear un archivo JAR.