REGIÓN DE MURCIA CONSEJERÍA DE EDUCACIÓN UNIVERSIDADES Y EMPLEO

Región de Murcia Consejería de Educación y Cultura d






Guía de desarrollo de software

REGIÓN DE MURCIA CONSEJERÍA DE EDUCACIÓN UNIVERSIDADES Y EMPLEO REGIÓN DE MURCIA CONSEJERÍA DE EDUCACIÓN UNIVERSIDADES Y EMPLEO Región de Murcia

Consejería de Educación, Universidades y Empleo

D.G. de Infraestructura y Promoción Educativo

Servicio de Gestión Informática


Avda. de La Fama, 15

30006 MURCIA

www.carm.es/educacion




Guía para la estructuración de proyectos maven

Guía para la estructuración de proyectos maven 1

Introducción 1

Estructura de un proyecto Java 1

Versionado 3

Integración continua 3

Publicación en Artifactory 3

Despligue de la aplicación en un servidor 3


Introducción

Este documento describe la estructura general de una aplicación Java integrado en el marco de desarrollo de aplicaciones y con el framework de desarrollo.


Estructura de un proyecto Java

Un proyecto será un conjunto de módulos. Todo proyecto debe partir obligatoriamente de un arquetipo de tipo proyecto y el desarrollo de cualquier módulo de un proyecto serán submódulos de éste, que obligatoriamente se deben hacer partiendo del arquetipo correspondiente al módulo en cuestión.


Nombre del arquetipo

Descripción

Tipo de módulo

war.archetype

Genera un proyecto Maven war que integra JSF, Spring y la capa de servicios web.

Módulo web (aplicación web)

jar.archetype

Genera un proyecto Maven jar básico.

Módulo jar (librería)

ws.archetype

Genera un peyecto Maven war que viene preparado para la implementación de un servicio web.

Módulo servicio web

prj.archetype

Genera el proyecto de partida para cualquier aplicación. Todo módulo del proyecto deberá ser submódulo de éste.

Proyecto



Versionado

Todos los proyectos deben versionarse utilizando los mecanismos de versionado que ofrece Maven, utilizando la etiqueta <version> que se encuentra dentro del fichero pom.xml.

Siempre que se realicen modificaciones sobre un módulo y se proceda a una entrega (en cualquier entorno) se ha de modificar el número de versión.

El número de versión estará formado por tres digitos.


Integración continua

Además de dar de alta el proyecto en CVS, hay que darlo de alta en Jenkins, para introducirlo en el sistema de integración continua.


Jenkins es un software de integración continua open source escrito en Java. Jenkins proporciona integración continua para el desarrollo del software


Publicación en Artifactory

Artifactory es un repositorio de artefactos maven. Las piezas que componen todas las aplicaciones. No están permitida la publicación directa en Artifactory. Ha de ser Jenkins quien haga la publicación.


De esta forma todos los proyectos usarán las mismas piezas de código y si un commit en CVS produce una descompilación de otros paquetes, Jenkins se da cuenta y no permite la publicación en Artifactory. Mantiendo estable el repositorio.


Despligue de la aplicación en un servidor

Actualmente esta tarea se hace desde Natalia. Y simplemente lo que hace es descargarse el war directamente de Artifactory y lo deposita en el servidor correspondiente. Así se evita que se despliegue una war sin haber pasado por CVS, por Jenkins y Artifactory.


Ubicación CVS: interno/recursos/documentacion/guia_desarrollo.doc

Pagina 3 de 3






Tags: consejería de, universidades, región, murcia, educación, empleo, consejería