Hormiga apache

La versión actual de la página aún no ha sido revisada por colaboradores experimentados y puede diferir significativamente de la versión revisada el 29 de mayo de 2014; las comprobaciones requieren 19 ediciones .
Apache Ant
(otra herramienta ordenada)
Tipo de Automatización de montaje
Desarrollador Fundación de software Apache
Escrito en Java [2] [1]
Sistema operativo Software multiplataforma
Primera edición julio de 2000 y 17 de febrero de 2006 [1]
plataforma de hardware máquina virtual de Java
ultima versión
Licencia Licencia Apache 2.0
Sitio web ant.apache.org
 Archivos multimedia en Wikimedia Commons

Apache Ant ( hormiga en inglés   - una hormiga y un acrónimo  - "Otra herramienta ordenada") es una utilidad para automatizar el proceso de creación de un producto de software. Es un análogo multiplataforma de la utilidad make , donde todos los comandos están escritos en formato XML .

Ant fue creado como parte del proyecto Jakarta , hoy es un proyecto independiente de primer nivel de Apache Software Foundation .

La primera versión fue desarrollada por el ingeniero de Sun Microsystems , James Davidson .) que necesitaba una utilidad como make mientras desarrollaba la primera implementación de referencia de J2EE .

Ant, a diferencia del otro creador de proyectos Apache Maven , proporciona una compilación de proyecto imperativa en lugar de declarativa .

Descripción

A diferencia de make, la utilidad Ant es completamente independiente de la plataforma, solo requiere que el entorno de trabajo Java  ( JRE ) esté instalado en el sistema que se utiliza . La omisión de los comandos del sistema operativo y el formato XML brindan portabilidad para los scripts.

El proceso de compilación está controlado por un script XML , también llamado archivo de compilación. En primer lugar, este archivo contiene la definición del proyecto, que consta de objetivos individuales ( Targets ). Los objetivos son comparables a los procedimientos en los lenguajes de programación y contienen llamadas a comandos de tareas ( Tareas ). Cada tarea es un comando atómico e indivisible que realiza alguna acción elemental.

Las dependencias se pueden definir entre objetivos: cada objetivo se ejecuta solo después de que se completan todos los objetivos de los que depende (si ya se completaron antes, no se vuelve a ejecutar).

Los ejemplos típicos de objetivos son limpiar (eliminar archivos intermedios), compilar ( compilar todas las clases), implementar (implementar la aplicación en el servidor). El conjunto específico de objetivos y sus relaciones dependen de las características específicas del proyecto.

Ant le permite definir sus propios tipos de tareas mediante la creación de clases Java que implementan ciertas interfaces .

Tareas de uso frecuente (Tareas)

La distribución incluye muchas bibliotecas que afectan a una amplia gama de tareas. Además, hay bibliotecas adicionales disponibles en el sitio web del proyecto que amplían la funcionalidad del producto, por ejemplo, para la integración con sistemas de terceros. La versión estándar contiene más de 150 tipos de tareas. A continuación se muestran ejemplos de tales comandos.

El código Acción
javac compilando código Java
Copiar Copiando documentos
Eliminar borrado de archivos y directorios
Muevete mover archivos y directorios
reemplazar reemplazar fragmentos de texto en archivos
junta ejecución automática de pruebas unitarias
ejecutivo ejecución de un comando externo
Código Postal creando un archivo Zip
currículum ejecutando el comando CVS
correo enviando correo electrónico
xslt Superposición de transformaciones XSLT

Guión de muestra

Este script define dos objetivos, clean y build . El primero elimina archivos temporales, el segundo compila y crea un archivo JAR . El objetivo de compilación depende de clean , por lo que cuando se ejecuta, primero se limpiará y solo luego realizará los trabajos de compilación reales. Construir también se selecciona como destino predeterminado. Esto significa que se ejecutará al procesar este script sin especificar explícitamente un objetivo.

<?xml version="1.0"?> <proyecto predeterminado= "build" basedir= "." > <nombre de la propiedad = "nombre" valor= "AntBuildJar" /> < nombre de la propiedad= "src.dir" ubicación= "${basedir}/src" /> < nombre de la propiedad= "build" ubicación= "${basedir} /build" /> < nombre de propiedad= "build.classes" ubicación= "${build}/classes" /> < id de ruta= "libs.dir" > <fileset dir= "lib" include = "**/* .jar" /> </path> <!-- Construir la aplicación --> <target name= "build" depend= "clean" description= "Crear la aplicación" > <!-- Crear directorios --> <mkdir dir = "${construir.clases}" /> <!-- Compilar archivos fuente --> <javac srcdir= "${src.dir}" destdir= "${build.classes}" debug= "false" deprecation= "true" Optimize= "true" > <classpath refid= "libs.dir" /> </javac> <!-- Copie los archivos requeridos --> <copy todir= "${build.classes}" > <fileset dir= "${src.dir}" include = "**/*.*" excludes= "** /*.java" /> </copiar> <!-- Crear archivo JAR --> <jar jarfile= "${build}/${name}.jar" > <fileset dir= "${build.classes}" /> </jar> </target> <!-- Limpieza --> <target name= "clean" description= "Elimina todos los archivos temporales" > <!-- Eliminar archivos --> <delete dir= "${build.classes}" /> </target > </proyecto>

Notas

  1. 1 2 https://projects.apache.org/json/projects/ant.json
  2. The ant Open Source Project en Open Hub: Página de idiomas - 2006.
  3. Noticias del proyecto Apache Ant™

Véase también

  • Apache Maven  es una herramienta alternativa con tareas similares
  • Gradle es una herramienta alternativa que soporta tareas de ant

Enlaces