martes, 16 de octubre de 2012

MAVEN

MAVEN

Maven es una herramienta de software para la gestión y construcción de proyectos Java.

Es mucho mas sencillo que otras versiones del mismo tipo en funcionalidad como ('Apaceh Ant','PEAR de PHP','CPAN de Perl'), su modelo de configuración de construcción es más simple, esta basado en un formato XML.
Maven utiliza un Project Object Model (POM) para describir el proyecto de software a construir, sus dependencias de otros módulos y componentes externos, y el orden de construcción de los elementos.
Maven está construido usando una arquitectura basada en plugins que permite que utilice cualquier aplicación controlable
a través de la entrada estándar.

Su arquitectura esta sumamente confiable para desarrollos java, lagunas características de servicios:

Un servidor de integración continúa.
Un servidor que haga de proxy para artefactos Maven.
El motor incluido en su núcleo puede dinámicamente descargar plugins de un repositorio.
Selenium para test de navegación y de javascript (para objetos web).
La gestión de librerías garantiza que en un equipo numeroso todos tiene las misma versión, incluso se puede configurar
para que se actualicen las releases automáticamente.
Maven trabaja mucho mejor con un repositorio para manejar las versiones de los cambios (un repositorio de código fuente en SVN o GIT)


Partes del ciclo de vida principal del proyecto Maven:

1. compile : Genera los ficheros .class compilando los fuentes .java
2. test    : Ejecuta los test automáticos de JUnit existentes, abortando el proceso si alguno de ellos falla.
3. package : Genera el fichero .jar con los .class compilados
4. install : Copia el fichero .jar a un directorio de nuestro ordenador donde maven deja todos los .jar. De esta forma esos .jar pueden utilizarse en otros proyectos maven en el mismo ordenador.
5. deploy  : Copia el fichero .jar a un servidor remoto, poniéndolo disponible para cualquier proyecto maven con acceso a ese servidor remoto.
Cuando se ejecuta cualquiera de los comandos maven, por ejemplo, si ejecutamos mvn install, maven irá verificando todas las fases del ciclo de vida desde la primera hasta la del comando, ejecutando sólo aquellas que no se hayan ejecutado previamente.

Algunas metas que no son parte del ciclo de vida por defecto, porque no necesariamente tienen que ser realizadas siempre:

1. clean    : Elimina todos los .class y .jar generados. Después de este comando se puede comenzar un compilado desde cero.
2. assembly :assembly : Genera un fichero .zip con todo lo necesario para instalar nuestro programa java. Se debe configurar previamente en un fichero xml qué se debe incluir en ese zip.
3. site     : Genera un sitio web con la información de nuestro proyecto. Dicha información debe escribirse en el fichero pom.xml y ficheros .apt separados.
4. site-deploy : Sube el sitio web al servidor que hayamos configurado.

Pero estas metas pueden ser añadidas al ciclo de vida a través del Project Object Model (POM).

Integración con IDEs
Existen plugins de Maven para crear archivos de configuración del IDE a partir de los POMs. Actualmente se soportan:

Eclipse
Netbeans
IntelliJ
JDeveloper 11G

No hay comentarios:

Publicar un comentario