domingo, 2 de marzo de 2008

Utilizando properties en el archivo build.xml

El uso de una etiqueta property dentro del archivo build.xml en ANT es muy conveniente, y más cuando ya estamos trabajando con un archivo build.xml más grande. Mediante la etiqueta property (como su nombre lo indica) estaremos creando una propiedad que puede ser utilizada a lo largo de todo nuestro archivo build.xml, algo asi como cuando creamos una constante, la cuál si la llegamos a cambiar, se vería reflejado dicho cambio en todos los lugares donde estemos llamando esa propiedad. Trabajemos sobre nuestro HolaMundo.java, modificando nuestro build.xml para que quede como se muestra a continuación:



Se recomienda colocar todos las etiquetas property antes de todos los targets, como podemos observar del código que se muestra arriba, property usa para nuestro ejemplo dos tributos, name y value, en name colocamos el nombre que le asignaremos a nuestro atributo y en value el valor que le corresponde. En nuestro ejemplo el primer property tiene los siguientes atributos, name="fuente" value=".".


Lo siguiente es proceder a usarlo y eso lo podemos observar dentro del target "compilar", como pueden observar dentro de la tarea (task) que se llama javac su atributo srcdir="${fuente}", aqui en este atributo estamos haciendo uso del property definido anteriormente, y precisamente utilizamos los simbolos ${} para poder tener acceso al valor que guarda el property fuente. Reiteramos el uso de este property, si utilizaramos a lo largo de un build.xml de unas 70 lineas, y lo utilizaramos en 40 lineas de dicho archivo, es muy conveniente cambiar una sola linea (La del property correspondiente), y que el cambio se vea reflejado en todas las demás lineas que lo necesiten. De lo contrario sería una tarea muy engorrosa cambiar 40 lineas y obviamente todo estaría muy propenso a cometer errores.


Si utilizamos este build.xml para correr nuestro ejemplo, deberia de ejecutar sin ningún problema y deberíamos observar la siguiente salida, que es muy parecida a la que obtuvimos en un tema previo a este.

sábado, 23 de febrero de 2008

Ejecutar HolaMundo.java desde ANT

requisitos: crear una carpeta con el nombre que gusten, yo propongo que se llame "estudio" y dentro de el creamos la carpeta "holamundo" guardaremos todo lo que necesitemos para ejecutar este ejemplo (archivo xml y fuentes).


Bueno ahora veremos como compilar y ejecutar un HolaMundo.java desde ANT, pero primero tenemos que conocer unos aspectos importantes acerca de lo que necesita ANT para poder llevar a cabo estas tareas.

Primero que nada a continuación tenemos el archivo HolaMundo.java

public class HolaMundo{
public static void main(String arg[]){
System.out.println("Hola a los usarios de ANT");
}
}


ANT utiliza un archivo llamado build.xml, en este archivo podemos tener varias tareas que nos permitan trabajar con nuestro proyecto. A continuación les presento el archivo build.xml que estaremos utilizando para nuestro HolaMundo.


Archivo build.xml




Aqui hay algunos puntos importantes que debemos conocer antes de utilizarlo, primero que nada es un archivo XML cuya principal etiqueta de apertura y cierre se llama project. Aqui en project tenemos unos parámetros que debemos llenar como lo es name, que se refiere al nombre del proyecto, y basedir, en el cuál se podrá observar que entre comillas se encuentra un punto. Esto indica a ANT que donde se encuentra nuestro proyecto es a partir del directorio actual.


En su interior un project está compuesto de varios targets, en nuestro project tenemos compilar y ejecutar. Entre los parámetros del target tenemos name (nombre que le damos al target) y depends. "depends" se utiliza para indicarle a ANT que si llamamos por ejemplo al target ejecutar, implica que primero debe ejecutarse el target compilar.


Ahora dentro de cada target se encuentra una o mas tareas que se pueden ejecutar. Por ejemplo
para el target compilar tenemos la siguiente tarea:




la cual le indica a ANT que debe de utilizar javac que es el compilador de java para compilar los fuentes que se encuentran en srcdir (directorio fuente) y también indicamos la ruta donde se guardarán los .class utilizando el parámetro destdir(directorio destino). En nuestro caso tenemos que el directorio fuente y destino es el mismo y es el directorio donde se encuentra nuestro archivo build.xml.


Por último el target ejecutar, tiene la siguiente tarea:



donde classname es el nombre de nuestra clase que queremos ejecutar. Podemos ver que esta tarea manda llamar el intérprete de la máquina virtual que es "java". En una linea de comandos tecleamos ant ejecutar, y ANT buscará el build.xml, ejecutará la tarea "ejecutar", la cuál depende de compilar, así que compilará primero y ejecutará a continuación y obtendremos algo como lo que podemos observar en la siguiente imagen:




Como podrán observar en la linea de comandos podemos ver que cuando llamamos a la tarea ejecutar primero se compila nuestro archivo fuente y luego de ejecuta ya que la tarea "ejecutar" tiene el parámetro depends="compilar", posterior a la compilación vemos que la ejecución nos muestra un mensaje que se encuentra en nuestro archivo HolaMundo.java

domingo, 3 de febrero de 2008

Instalar ANT

Paso 1.- Descargar la JVM de Java

La podemos descargar de http://java.sun.com/javase/downloads/index.jsp, ustedes podrán descargar la versión que hay hasta ahora que es la JDK 6 Update 4.

Paso 2.-

Ahora procedamos a descargar ANT desde su página: http://ant.apache.org/bindownload.cgi, hasta este momento la última versión es la 1.7.0. Obviamente descargamos los binarios, ya que si descargamos los fuentes tendríamos que compilar todo el proyecto y pues mejor no nos la complicamos verdad?

Paso 3.-

Instalamos la JVM, para no complicarnos con el Path yo siempre recomiendo que instalemos en
C:\jvm.
Instalamos ANT, aqui lo único que debemos hacer es descomprimir el archivo .zip que descargamos. Y aqui también yo recomiendo que se instale en C:\ant.

Paso 4.-

Ajustamos las variables de entorno para que no haya pierde y podamos utilizar tanto la JVM como ANT sin ningún problema y en cualquier lado. Para windows XP, den clic de la derecha sobre MiPC y seleccionan properties o propiedades. Ahora ya que tienen la ventana, seleccionan la pestaña que dice avanzado (Advanced). La pantalla que deben de obtener es la que muestro a continuación:


Damos clic en el botón de Variables de Entorno (Environment Variables). Y obtenemos la siguiente pantalla:


Ahora si, presionando el botón new vamos creando una a una las siguientes variables de entorno:

ANT_HOME C:\ant
JAVA_HOME C:\jvm
CLASSPATH .;C:\jvm\lib\tools.jar;C:\jvm\lib\htmlconverter.jar;C:\jvm\lib\dt.jar

La siguiente variable de entorno no hay que crearla, lo que tendríamos que hacer es agregarle la ruta de la carpeta bin tanto de la virtual machine como el bin de ANT. No olviden que hay que colocar un punto y coma por cada ruta que coloquemos.


Path: ;C:\jvm\bin;C:\ant\bin

Y listo ahora vamos al siguiente paso:

5.- Ahora si vamos a probar que todo funcione adecuadamente, vamos a abrir una consola de DOS.

inicio-> todos los programas -> accesorios -> command prompt

Y tecleamos

C:\>ant damos enter y deberíamos de obtener un mensaje como el siguiente:

Buildfile: build.xml does not exist!
Build failed

Lo cuál nos indica que nuestro ajuste en las variables de entorno fué correcto y podemos utilizar ANT.

Prefacio

En este blog compartiré con todos ustedes el uso de ANT, una herramienta que considero es una de las mejores, y aunque a muchos no les agrada la idea de utilizar la línea de comandos, considero que una vez que conozcan a esta hormiguita trabajadora se enamorarán de ella. Estaré actualizando el blog con datos interesantes desde como instalar ANT, hasta como hacerlo interactuar con XDOCLET, JUNIT y otras herramientas más (Que se pueden utilizar en Extreme Programming). Muchas gracias y espero a muchos les sirva todo lo que estaré colocando en este blog. Que lo disfruten y felices líneas de programación. Se aceptan sugerencias y comentarios para poder mejorar toda esta información.