Antartec es Open Source, Parte 6: Maven

28 Noviembre 2008 por Juan Eladio Sánchez Rosas Deja una respuesta »

Para culminar esta segunda fase de artículos acerca del uso de tecnologías de código abierto en los servicios de desarrollo y soporte de aplicaciones en Antartec, se hará una breve revisión de Maven como herramienta de apoyo en nuestros proyectos de desarrollo.

Qué es Maven

Maven es una herramienta de administración de proyectos Java perteneciente a la Apache Software Foundation. Se basa en el concepto de Modelo de Objetos de Proyecto (Project Object Model, POM), el cual es representado por un archivo XML que contiene información general acerca de un proyecto y su configuración. Este archivo es usado por Maven para construir un proyecto.

Visión General

En el desarrollo de aplicaciones en Java se hace uso de innumerables componentes, librerías y otras piezas de código elaboradas por el equipo de trabajo o terceros, las cuales generalmente son adicionadas de manera manual y, por tanto, pueden sugir problemas al efectuar cambios en las versiones de dichos componentes, o en la forma como éstos son utilizados por la aplicación a desarrollar.

Maven es una herramienta diseñada para facilitar el proceso de construcción de software con un sistema uniforme de generación de aplicaciones; proporcionar información de calidad para los proyectos; proveer de lineamientos en base a las mejores prácticas de desarrollo; y permitir la incorporación transparente de nuevos componentes.

El uso de Maven en Antartec

Antartec ha incorporado hace más de un año el uso de Maven (en su versión 2) en todos sus proyectos de desarrollo de aplicaciones Web y de escritorio basadas en Java. Desde su implantación se han observado las siguientes mejoras:

  • La definición de un proceso unificado para construir proyectos: ahora con un solo clic se puede construir, probar, instalar y desplegar aplicaciones de software. Esto redunda en un ahorro de tiempo dedicado anteriormente a estas tareas repetitivas.
  • El tiempo dedicado a obtener una copia actual del proyecto es menor, dado que los archivos binarios sólo se descargan la primera vez, y generalmente no se requiere descargar a cada momento los JARs más comunes.
  • El manejo unificado y ordenado de las dependencias: Se cuenta con versiones de los productos y de los componentes que utilizan, con lo cual se tiene la posibilidad de cambiar únicamente los nombres de archivos para indicar una nueva versión.
  • Un repositorio centralizado de archivos Java (JARs): A diferencia de Ant, donde cada componente (del equipo o desarrollado por terceros) debía ser incluido como parte del proyecto, con Maven es posible descargar el código de la aplicación y Maven se encarga de obtener los componentes, sea desde el repositorio local de Antartec o en el repositorio global de Maven.

A manera de conclusión

Maven es una herramienta de apoyo a los proyectos de desarrollo en tecnologías Java. Ha sido diseñada para facilitar las operaciones cotidianas de los programadores en la generación de proyectos, lo cual permite a los equipos enfocarse en las actividades propias de programación, y tiene como visión convertir a su repositorio global en la fuente de distribución de los componentes de código abierto más utilizados en los proyectos de desarrollo escritos en Java.

Más información

Maven
What is Maven?

Wikipedia – La enciclopedia libre
Maven
(Con secciones traducidas por el autor)

Related posts:

  1. Antartec es Open Source, Parte 5: Subversion (SVN)
  2. Antartec es Open Source, Parte 4: Mantis Bug Tracker
  3. Antartec es Open Source, Parte 2: Asterisk
  4. Antartec es Open Source, Parte 3: Alfresco
  5. Antartec es Open Source, Parte 1: Zimbra Collaboration Suite

Trackbacks /
Pingbacks

  1. Maven en detalle - Parte 1

Deja un comentario