Ya esta disponible la versión 2.0.10 de Maven, la popular herramienta de administración de proyectos de Apache.
Para descargarlo usen este enlace, y para mas información usar este.
Mostrando las entradas con la etiqueta mvn. Mostrar todas las entradas
Mostrando las entradas con la etiqueta mvn. Mostrar todas las entradas
miércoles, 18 de febrero de 2009
viernes, 19 de septiembre de 2008
Maven 2.1.0-M1 disponible
Hoy fue liberado al publico la versión 2.1.0-M1 de Apache Maven. Esta versión corrige unos 70 defectos por lo cual se recomienda su uso de forma inmediata. Para bajar la versión denle clic a este enlace. Para ver la lista de correcciones denle clic a este enlace.
jueves, 24 de julio de 2008
viernes, 16 de mayo de 2008
M2Eclipse 0.9.4 incluye editor de pom.xml
La version mas reciente (0.9.4) del plugin de Maven 2 para Eclipse - M2Eclipse incluye un editor para el pom.xml el cual permite completarlo basado en el schema. Otra caracteristica interesante es que permite completar los artefactos de las dependencias basado en las versiones disponibles. Si quieren ver mas detalles denle clic aqui.
miércoles, 9 de abril de 2008
miércoles, 30 de enero de 2008
Q4E actualizado
Acaba de salir la versión 0.4.0 del plugin Q4E de Maven para Eclipse. Para ver mas detalles de los cambios den clic aquí.
Powered by ScribeFire.
viernes, 30 de noviembre de 2007
Maven 2.0.8 disponible
Ya se libero la versión 2.0.8 de maven 2, la popular herramienta para administración de proyectos de Apache. La lista de mejoras las pueden ver aqui.
mvn -version
Maven version: 2.0.8
Java version: 1.4.2_14
OS name: "windows xp" version: "5.1" arch: "x86" Family: "windows"
Powered by ScribeFire.
viernes, 16 de noviembre de 2007
Continuum 1.1 por fin es FINAL
Después de 2 versiones alfa y 4 beta por fin esta disponible para hacer testing la version final 1.1 de Continuum, la herramienta de integración continua de Apache. El release final estará disponible en pocos días. Esta versión incluye varias mejoras respecto al beta-4 e introduce una herramienta nueva para hacer backups de la base de datos de continuum (no la de usuarios).
La lista de mejoras de esta versión la pueden ver aquí.
Los instaladores están en estos links:
- Runtime: Aplicación standalone
- Webapp: WAR para instalar en servlet container
- Data cli: Cliente para migrar la base de datos
- xmlrpc util: Herramienta xmlrpc para backups

La lista de mejoras de esta versión la pueden ver aquí.
Los instaladores están en estos links:
- Runtime: Aplicación standalone
- Webapp: WAR para instalar en servlet container
- Data cli: Cliente para migrar la base de datos
- xmlrpc util: Herramienta xmlrpc para backups

Powered by ScribeFire.
sábado, 27 de octubre de 2007
Continuum 1.1-beta-4 disponible
La versión 1.1 de Continuum ya llega al release beta-4, falta poco para tener la versión oficial disponible.
Pueden bajarlo en estos links
En este link tienen la guia de instalación, la cual incluye las versiones ejecutable, tomcat, jboss, geonimo y glassfish
Pueden bajarlo en estos links
- Ejecutable
- War
- Utility para migrar la base de datos
En este link tienen la guia de instalación, la cual incluye las versiones ejecutable, tomcat, jboss, geonimo y glassfish
- < Continuum 1.1-beta-4 started! >
- ---------------------------------
- \ ^__^
- \ (oo)\_______
- (__)\ )\/\
- ||----w |
- || ||
-
-
Powered by ScribeFire.
jueves, 20 de septiembre de 2007
Continuum 1.1-beta-3 disponible
Ya esta por salir el release 1.1-beta-3 de Continuum, la herramienta de integración continua de Apache, . Si quieren probarla la pueden bajar de aquí: standalone, webapp. La lista de mejoras las pueden ver aquí.
- < Continuum 1.1-beta-3 started! >
- ---------------------------------
- \ ^__^
- \ (oo)\_______
- (__)\ )\/\
- ||----w |
- || ||
-
-
Powered by ScribeFire.
sábado, 18 de agosto de 2007
Continuum 1.1-beta-2 disponible
Ya esta disponible la mas reciente versión de Continuum, la herramienta de integración continua de Apache. Esta versión corrige una gran cantidad de bugs asi como una herramienta para administrar la base de datos. Lo pueden bajar desde aqui
- Continuum 1.1-beta-2 started!
- ---------------------------------
- \ ^__^
- \ (oo)\_______
- (__)\ )\/\
- ||----w |
- || ||
-
-
Powered by ScribeFire.
jueves, 21 de junio de 2007
Maven 2.0.7 disponible
Apache acaba de liberar un nuevo release de la herramienta Maven 2, la lista de mejoras las pueden ver aquí.
mvn -version
Maven version: 2.0.7
Java version: 1.4.2_14
OS name: "windows xp" version: "5.1" arch: "x86"
Powered by ScribeFire.
sábado, 5 de mayo de 2007
Integración continua usando Continuum
Continuum es un producto de la fundación Apache para integración continua. A diferencia de Cruise Control, Continuum utiliza una interfaz web para realizar todas sus operaciones. El producto esta basado en el popular scheduler Quartz y permite integrar proyectos de maven 1, Maven 2, Ant y scripts. Lo bueno de Continuum es lo fácil de instalar y de administrar. Prácticamente se tiene continuum corriendo en menos de 5 minutos.
La versión estable es la 1.0.3, la cual corre bajo un jetty autocontenido que por defecto corre en el puerto 8080. La instalación es básicamente descomprimir el instalador en un directorio cualquiera. En la carpeta bin existen scripts para ejecutarlo bajo diferente plataformas, solo basta ubicar la plataforma y ejecutar el comando ./run.sh start o si es windows .\run.bat. Cuando se ejecuta este comando por primera vez, Continuum expande en la carpeta apps la aplicación con sus valores por defecto así como crea la instancia de base de datos que usa internamente. Por defecto la base de datos es Apache Derby pero puede ser cambiada por otra ( Continuum trae una definición para postgreSQL y he leído de personas que lo han configurado con MySQL ).
Para probar la instalación solo falta ejecutar http://localhost:8080/continuum/servlet/continuum. La primera vez que se ejecuta se llega a una pagina para registrar el usuario administrador. Despues se puede hacer login con ese usuario y comenzar a usar la aplicación. La aplicación permite la definición de usuarios basados en perfiles así como también permite de forma opcional usuarios guest.
Si se quiere cambiar la configuración por defecto se debe editar el archivo apps/conf/application.xml. Alli se puede cambiar el puerto de ejecución, la información del servidor smtp para notificaciones, etc.
Los logs de la aplicacion se pueden ver bajo apps/logs.
Para registrar un proyecto solo basta con seleccionar el tipo de proyecto desde el menu y cargar el archivo de configuración del proyecto. Para Maven 1 es el project.xml, Maven 2 el pom.xml, ant el build.xml, etc. Lo único requerido es que el archivo de configuración tenga definido los parametros de scm para conectarse con el repositorio de control de versiones (CVS, SVN, etc). Una vez que se carga el archivo de configuración Continuum se encarga de registrarlo en la bd usando los valores definidos en el archivo y baja del repositorio una copia local sobre la cual va a trabajar. Después Continuum se encargara de revisar el repositorio scm por cambios (por defecto cada hora), si se encuentran cambios presentes estos se bajan a la copia local y se ejecutan todos los comandos definidos durante el proceso de setup del proyecto. Para Maven 2 seria clean install. Si se presenta un error durante esta ejecución se enviaran notificaciones a los usuarios responsables. Estas notificaciones pueden ser por email o por IM. Adicionalmente Continuum mantienen un histórico de todos los builds que ha realizado o intentado realizar sobre un proyecto.
Si se quiere hacer seguimiento de este proyecto se pueden registrar en Nabble y asi reciben feedback de la comunidad.
En este momento se encuentra disponible para pruebas la version 1.1 alpha. Esta versión contiene una gran cantidad de mejoras con respecto a la 1.0.3. No he podido revisarla en profundidad pero si noté que cambio la interfaz web, esta fue reestructurada y ahora como que tiene mas opciones. El otro cambio interesante es que ahora se distribuye tambien como un war por lo que se puede instalar en cualquier servlet container de su preferencia.
Una nota interesante, si se esta trabajando bajo windows y se tiene Zone Alarm instalado se puede obtener un error de clase no definida "Files Zone" al tratar de arrancar Continuum. El probema se debe a que Zone Alarm modifica el PATH de la máquina y agrega un directorio definido entre doble comillas. Solo deben quitar esas dobles comillas, abrir una nueva ventana DOS y volver a ejecutar .\start.bat.
La versión estable es la 1.0.3, la cual corre bajo un jetty autocontenido que por defecto corre en el puerto 8080. La instalación es básicamente descomprimir el instalador en un directorio cualquiera. En la carpeta bin existen scripts para ejecutarlo bajo diferente plataformas, solo basta ubicar la plataforma y ejecutar el comando ./run.sh start o si es windows .\run.bat. Cuando se ejecuta este comando por primera vez, Continuum expande en la carpeta apps la aplicación con sus valores por defecto así como crea la instancia de base de datos que usa internamente. Por defecto la base de datos es Apache Derby pero puede ser cambiada por otra ( Continuum trae una definición para postgreSQL y he leído de personas que lo han configurado con MySQL ).
Para probar la instalación solo falta ejecutar http://localhost:8080/continuum/servlet/continuum. La primera vez que se ejecuta se llega a una pagina para registrar el usuario administrador. Despues se puede hacer login con ese usuario y comenzar a usar la aplicación. La aplicación permite la definición de usuarios basados en perfiles así como también permite de forma opcional usuarios guest.
Si se quiere cambiar la configuración por defecto se debe editar el archivo apps/conf/application.xml. Alli se puede cambiar el puerto de ejecución, la información del servidor smtp para notificaciones, etc.
Los logs de la aplicacion se pueden ver bajo apps/logs.
Para registrar un proyecto solo basta con seleccionar el tipo de proyecto desde el menu y cargar el archivo de configuración del proyecto. Para Maven 1 es el project.xml, Maven 2 el pom.xml, ant el build.xml, etc. Lo único requerido es que el archivo de configuración tenga definido los parametros de scm para conectarse con el repositorio de control de versiones (CVS, SVN, etc). Una vez que se carga el archivo de configuración Continuum se encarga de registrarlo en la bd usando los valores definidos en el archivo y baja del repositorio una copia local sobre la cual va a trabajar. Después Continuum se encargara de revisar el repositorio scm por cambios (por defecto cada hora), si se encuentran cambios presentes estos se bajan a la copia local y se ejecutan todos los comandos definidos durante el proceso de setup del proyecto. Para Maven 2 seria clean install. Si se presenta un error durante esta ejecución se enviaran notificaciones a los usuarios responsables. Estas notificaciones pueden ser por email o por IM. Adicionalmente Continuum mantienen un histórico de todos los builds que ha realizado o intentado realizar sobre un proyecto.
Si se quiere hacer seguimiento de este proyecto se pueden registrar en Nabble y asi reciben feedback de la comunidad.
En este momento se encuentra disponible para pruebas la version 1.1 alpha. Esta versión contiene una gran cantidad de mejoras con respecto a la 1.0.3. No he podido revisarla en profundidad pero si noté que cambio la interfaz web, esta fue reestructurada y ahora como que tiene mas opciones. El otro cambio interesante es que ahora se distribuye tambien como un war por lo que se puede instalar en cualquier servlet container de su preferencia.
Una nota interesante, si se esta trabajando bajo windows y se tiene Zone Alarm instalado se puede obtener un error de clase no definida "Files Zone" al tratar de arrancar Continuum. El probema se debe a que Zone Alarm modifica el PATH de la máquina y agrega un directorio definido entre doble comillas. Solo deben quitar esas dobles comillas, abrir una nueva ventana DOS y volver a ejecutar .\start.bat.
Powered by ScribeFire.
domingo, 8 de abril de 2007
Definición de dependencias en Maven
Una forma fácil para definir dependencias en Maven 2 es utilizar el site http://mvnrepository.com. Alíi podemos encontrar la definición de las dependencias así como en muchos casos el jar asociado. Es muy útil porque permite estandarizar la definición de dependencias no publicas como las de oracle, sun, ibm, etc.
viernes, 6 de abril de 2007
Construyendo proyectos con Maven 2
Maven es una excelente herramienta que nos permite simplificar el proceso de construcción de un proyecto (jar, ear, ejb, war, etc). La herramienta es tan poderosa que se ha convertido en una de mis favoritas, y la uso prácticamente todos los días. Alguna de las características que la han convertido en indispensable son:
Quizás lo mas interesante es el primer punto ya que es lo que uno hace en el día a día. Por ejemplo, para generar un war el comando seria
La definición del proyecto se hace en el archivo pom.xml y debe estar ubicado en el directorio raíz del proyecto. Allí se define información general del proyecto así como todas las dependencias del mismo.
La instalación es bien sencilla:
Como ven, es muy sencillo instalar, configurar y ejecutar maven. Después que uno se acostumbra a usarlo es difícil volver a ant o a otras herramientas similares. Para los que usan netbeans o eclipse existen plugins que permiten usar maven desde el IDE.
- Se puede construir, ejecutar tests y empaquetar un proyecto con un solo comando.
- Permite administrar las dependencias de un proyecto de forma eficiente
- Permite unificar la estructura de los proyectos
- Permite generar una pagina web del proyecto con información general y con reportes variados relacionados al proyecto.
- Define una guia de buenas practicas de desarrollo
Quizás lo mas interesante es el primer punto ya que es lo que uno hace en el día a día. Por ejemplo, para generar un war el comando seria
$ mvn clean war:war
La definición del proyecto se hace en el archivo pom.xml y debe estar ubicado en el directorio raíz del proyecto. Allí se define información general del proyecto así como todas las dependencias del mismo.
La instalación es bien sencilla:
- Bajar maven 2.0.x del site de Apache
- Unzip maven en algun directorio. Ejm: /home/usuario/maven
- Agregar al PATH el dir bin de maven.
- Agregar la variable MAVEN_OPTS al ambiente. Esta variable define parametros del JVM para maven.
- Crear el archivo settings.xml en el directorio {home}/.m2 del usuario. Este archivo contiene variables de configuración globales de MAVEN. A continuación se tiene un ejemplo del archivo
- La entrada localRepository debe apuntar a donde estar el repositorio local de maven. Es aquí donde maven almacena todas las dependencias de nuestros proyectos.
- Probar la instalación
- Ahora solo falta crear el pom.xml de un proyecto y listo. Supongamos que tenemos un proyecto A que debe generar un war. El pom.xml puede ser como:
- Fijense que se definieron varias dependencias como spring, mysql connectors, etc. Estas dependencias en principio no existen en nuestro proyecto pero al tratar de compilar con maven este se conectara a internet al repositorio global de maven y bajara las versiones de las dependencias que se especifican. El siguiente comando va a bajar las dependencias no presentes, compilar el proyecto, ejecutar cualquier test definido, generar el war y copiar el war en el repositorio local. El nombre del war será proyectoA-0.0.1.war y sera copiado dentro del repositorio local en la ruta definida por el groupId (org.test.maven)
export PATH=$PATH:/home/usuario/maven/bin:$ export MAVEN_OPTS=-Xmx256M<settings>
<localRepository>/home/usuario/m2_local_repo</localRepository>
<proxies />
<servers />
<mirrors />
<profiles />
</settings>
$ mvn --version
Maven version: 2.0.6
<?xml version="1.0" encoding="UTF-8"?>
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>org.test.maven</groupId>
<artifactId>proyectoA</artifactId>
<packaging>war</packaging>
<name>Proyecto A</name>
<version>0.0.1</version>
<description>Test maven</description>
<dependencies>
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-j2ee_1.4_spec</artifactId>
<version>1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
<version>2.0.3</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.0.5</version>
</dependency>
<dependency>
<groupId>xerces</groupId>
<artifactId>xercesImpl</artifactId>
<version>2.8.1</version>
</dependency>
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<version>1.2.1</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
$ mvn clean install
[INFO] Scanning for projects...
[INFO] ----------------------------------------------------------------------------
[INFO] Building Proyecto A
[INFO] task-segment: [clean, install]
[INFO] ----------------------------------------------------------------------------
[INFO] [clean:clean]
[INFO] Deleting directory /home/usuario/proyector/proyectoA/target
[INFO] Deleting directory /home/usuario/proyector/proyectoA/target/classes
[INFO] Deleting directory /home/usuario/proyector/proyectoA/target/test-classes
[INFO] [resources:resources]
[INFO] Using default encoding to copy filtered resources.
Downloading: http://repo1.maven.org/maven2/commons-dbcp/commons-dbcp/1.2.1/commons-dbcp-1.2.1.pom
6K downloaded
Downloading: http://repo1.maven.org/maven2/commons-dbcp/commons-dbcp/1.2.1/commons-dbcp-1.2.1.jar
105K downloaded
[INFO] [compiler:compile]
Compiling 8 source files to /home/usuario/proyector/proyectoA/target/target/classes
[INFO] [resources:testResources]
[INFO] Using default encoding to copy filtered resources.
[INFO] [compiler:testCompile]
Compiling 1 source file to /home/usuario/proyector/proyectoA/target/target/test-classes
[INFO] [surefire:test]
[INFO] Surefire report directory: /home/usuario/proyector/proyectoA/target/target/surefire-reports
-------------------------------------------------------
T E S T S
-------------------------------------------------------
Running test.TestUserDao
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 3.797 sec
Results :
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
[INFO] [war:war]
[INFO] Exploding webapp...
[INFO] Assembling webapp ProyectoA in /home/usuario/proyector/proyectoA/target/ProyectoA-0.0.1
[INFO] Copy webapp webResources to /home/usuario/proyector/proyectoA/target/ProyectoA-0.0.1
[INFO] Generating war /home/usuario/proyector/proyectoA/target/ProyectoA-0.0.1.war
[INFO] Building war: /home/usuario/proyector/proyectoA/target/ProyectoA-0.0.1.war
[INFO] [install:install]
[INFO] Installing /home/usuario/proyector/proyectoA/target/ProyectoA-0.0.1.war to /home/usuario/m2_local_repo/org/test/maven/ProyectoA/0.0.1/ProeyctoA-0.0.1
war
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 25 seconds
[INFO] Finished at: Fri Apr 06 18:37:46 EDT 2007
[INFO] Final Memory: 5M/15M
[INFO] ------------------------------------------------------------------------
Como ven, es muy sencillo instalar, configurar y ejecutar maven. Después que uno se acostumbra a usarlo es difícil volver a ant o a otras herramientas similares. Para los que usan netbeans o eclipse existen plugins que permiten usar maven desde el IDE.
Suscribirse a:
Entradas (Atom)