Vous êtes sur la page 1sur 35

Ejemplo del uso de Maven

Uso de maven tomando la aplicación Formul@


como ejemplo
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

Índice
1. OBJETO DE ESTE DOCUMENTO ............................................................................3
2. INSTALACIÓN....................................................................................................3
3. CREACIÓN DEL PROYECTO.................................................................................. 4
4. ESTRUCTURA DEL PROYECTO MAVEN. MIGRACIÓN DE LOS CONtENIDOS. ................7
5. DEFINICIÓN DE NUESTRAS DEPENDENCIAS. .........................................................9
6. EMPAQUETAMIENTO DEL PROYECTO. ..................................................................16
7. PLUGINS DE MAVEN......................................................................................... 16
8. OTRAS INFORMACIONES ...................................................................................18
9. GENERACIÓN DEL SITIO WEB ............................................................................20
10. INFORMES PARA ANALIZAR LA CALIDAD...........................................................24
11. FICHERO DESCRIPTOR PARA FORMULA. POM.XML..............................................25

Tipo de documento
INFORMACIÓN
Código del documento Revisión Nº total de páginas
464486761.odtMavenMaven 1.0 35
Elaborado por
Javier Echeverría Usúa
Historial de cambio
Versión Fecha Cambio

Lista de distribución

Ejemplo del uso de Maven Revisión 1.0


Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 2
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

1. OBJETO DE ESTE DOCUMENTO

El objetivo de este documento es ilustrar el uso de maven con una


aplicación java ya creada, la aplicación web Formul@.

2. INSTALACIÓN.

Pasos para la instalación de maven 2

1) Desempaquetamos el archivo maven-2.0.x-bin.tar.gz que nos podemos


bajar de la página de maven http://maven.apache.org/download.html en
la ruta donde deseemos instalarlo.
- tar zxvf maven-2.0.x-bin.tar.gz “o”
- unzip maven-2.0.x.zip

Tras esto se creará un directorio llamado "maven-2.0.x".

2) Añadir el directorio a el PATH:


- export PATH=.:/home/prueba/maven-2.0.x /bin:$PATH “o”
- set PATH="c:\program files\maven-2.0.x\bin";%PATH%

3) Establece la variable JAVA_HOME a la carpeta del jdk.


- export JAVA_HOME=/home/prueba/jdk1.5.0_09

4) Ejecuta "mvn –version". Si se ha instalado correctamente mostrara la


versión de maven que estamos utilizando.

Después de esto solo tendremos que usar el comando mvn desde la


carpeta de nuestro proyecto que contendrá un fichero llamado por defecto
“pom.xml”.

Ejemplo del uso de Maven Revisión 1.0


Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 3
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

3. CREACIÓN DEL PROYECTO

Para crear el proyecto con estructura maven para Formul@ podemos


hacerlo de dos formas.
1. Usando el mecanismo de arquetipos de maven: El plugin archetype
de maven es toolkit para creación de platillas de proyectos.
2. Creando una carpeta con un pom.xml (que es el fichero que
describe un proyecto en maven) vacío.

Explicaremos el primer mecanismo, aunque este tiene mas utilidad


cuand empezamos una aplicación desde cero.

Un archetype es un plugin que indica a maven con que que tipo de


estructura tiene que crear un proyecto. En función del tipo de proyecto
que queramos crear existen varios archetype, que nos permiten por
ejemplo crear proyectos para struts, spring, jsf, etc.

Una lista de archetypes disponibles se puede ver en esta url:


http://docs.codehaus.org/display/MAVENUSER/Archetypes+List

Usando la siguiente instrucción con el archetype maven-archetype-


webapp crearemos nuestro primer proyecto para maven.

mvn archetype:create
-DgroupId=com.viavansi
-DartifactId=formula
-Dpackaging=war
-DarchetypeGroupId=org.apache.maven.archetypes
-DarchetypeArtifactId=maven-archetype-webapp
-Dversion=1.0
-DarchetypeVersion=1.0

En esta instrucción aparecen un conjunto de elementos que se


guardará en el pom.xml del proyecto y que son típicos de cualquier
componente que se encuentre instalado en un repositorio maven.
1. artifacId es el nombre que le ponemos a nuestra apliacin o
componete y el nombre que se usara cuando la metamos en el
repositorio interno de maven.

Ejemplo del uso de Maven Revisión 1.0


Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 4
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

2. groupId es el grupo dentro del repositorio al que queremos que


pertenezca nuestro componente. Y suele hacer referencia a la
organización, similar al paquete de una clase.
3. packaging indica el tipo de empaquetamiento que se usará con la
aplicación, en este caso war.
4. version indica la versión actual de la aplicación.

Los elementos archetypeGroupId, archetypeArtifactId y


archeytypeVersion tienen el mismo significado que artifactId, groupId y
packaging pero referidos al componente maven-archetype-webapp que es
el archetype que vamos a usar.

Con esto solo necesitamos conexión a Internet para que maven se baje
el plugin correspondiente al archetype maven-archetype-webapp, ya que
es la primera vez que lo usamos, y que esta en el repositorio
http://www.ibiblio.org/maven2 como se puede en la tabla anterior.
Con esto tendremos una carpeta con la siguiente estructura:

El pom.xml inicial de nuestro proyecto es el siguiente:

<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.viavansi</groupId>
<artifactId>formula</artifactId>

Ejemplo del uso de Maven Revisión 1.0


Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 5
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

<packaging>war</packaging>
<version>1.0</version>
<name>formula Maven Webapp</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<finalName>formula</finalName>
</build>
</project>

El componente junit en su versión 3.8.1 nos lo añade automáticamete


como una dependencia, que es la forma en que se declara en maven
todas los componentes software que necesita nuestro proyecto.

Ejemplo del uso de Maven Revisión 1.0


Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 6
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

4. ESTRUCTURA DEL PROYECTO MAVEN. MIGRACIÓN DE LOS


CONTENIDOS.

Maven propone una estructura estándar de un proyecto:

En función del archetype que usemos esta estructura de carpetas


puede cambiar. El proyecto se describe en su totalidad en el fichero
pom.xml, y existe una localización estándar para el código fuente, los
recursos, el código de la aplicación Web. Estas localizaciones también se
pueden cambiar desde el pom.xml pero no es necesario.

El segundo paso tras crear el proyecto es migrar todos nuestros


ficheros a la nueva estructura de proyecto que hemos creado.

Es fundamental conocer que se coloca en cada una de las carpetas de


un proyecto maven. Por ejemplo las páginas y otros recursos como tags,
applets y el fichero web.xml se deben de encontrar en src/main/webapp.

En la siguiente tabla se puede ver que contiene cada carpeta.

src/main/java Ficheros de código fuente .java.

src/main/resources Todo lo que queramos que se copie cuando se cree la

Ejemplo del uso de Maven Revisión 1.0


Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 7
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

src/main/java Ficheros de código fuente .java.

carpeta del proyecto en target.

src/main/filters * Ficheros para los filtros.

src/main/assembly * Ficheros para el ensamblaje. En proyectos que se


componen de varios subproyectos.

src/main/config Ficheros de configuración.

src/main/webapp Páginas y otros recursos como tags, applets, css,


imágenes, ficheros js. y el fichero web.xml (en
webapp/WEB-INF/web.xml).

src/test/java Código fuente de las pruebas del proyecto.

src/test/resources Recursos para las pruebas.

src/test/filters * Filtros para las pruebas.

src/site Carpeta que contiene todos los ficheros necesarios para


la generación automática del sitio web con la información
del proyecto. La generación del sitio se explicara más
adelante.

target Es el directorio destino de todo build en maven. Vamos


todo el código compilado el proyecto, de las pruebas, los
ficheros .jar .war etc. cuando empaquetemos el proyecto,
la carpeta con el sitio web generado, todo se crea bajo la
carpeta target.

LICENSE.txt Proyecto donde se describen las licencias usadas para el


proyecto.

README.txt El fichero readme de introducción al proyecto

En esta imagen se puede ver que hemos metido en cada carpeta de


formula.

Ejemplo del uso de Maven Revisión 1.0


Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 8
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

Todo lo que hay bajo la carpeta site es para la generación del sitio web
del proyecto que generaremos con maven al final del documento.

Como habrán observado no existe una carpeta en un proyecto maven


donde se coloquen las librerías, como las que una aplicación web java
posee en la carpeta /WEB-INF/lib. La clave esta en el mecanismo que
usa maven para gestionar las dependencias.

Una vez que hemos movido el contenido de nuestra aplicación a la


nueva estructura de proyecto el siguiente paso será de finir en el
pom.xml las dependencias de nuestro proyecto.

5. DEFINICIÓN DE NUESTRAS DEPENDENCIAS.

Maven tiene un potente mecanismo de gestión de dependencias.


Simplemente indicando en el pom.xml los componentes software que
nuestra aplicación necesita maven se encarga de su obtención de un
repositorio local o remoto, actualizarlas, y resolver las dependencias
transitivas (osea las dependencias de las dependencias).

En el pom.xml que tenemos creado ya se encuentra definida una


dependencia. La de la versión 3.8.1 de junit. Como se ha podido ver antes
un proyecto maven tienen una localización para las pruebas que se creen
para el proyecto con junit.

Estas pruebas podremos lanzadlas desde la linea de comandos y ver


los resultados mvn test e incluso ver los resultados en el sitio web que
maven genera con información del proyecto.

<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>

Ejemplo del uso de Maven Revisión 1.0


Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 9
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

<scope>test</scope>
</dependency>
</dependencies>

Además de los campos groupId, artifactId y versión que todos los


proyectos en maven tienen. Al añadir la dependencia tenemos que decir
el ámbito <scope>. Los más usados on compile que serán todas
aquellas librerías/proyectos que nuestro proyecto necesita par compilar, y
test como se ve en el ejemplo que indica que son librerías necesarias
para ejecutar las pruebas.

En maven hay dos tipos de repositorios, los repositorios locales, por


defecto en linux se encuentra en /home/usuario/.m2/repository y se
pude modificar en el fichero setting.xml, y los repositorios remotos.

Cuando intentemos compilar, empaquetar o instalar nuestro proyecto


maven buscará las dependencias que le hemos indicado. Primeramente
en el repositorio local y si no los encuentra buscará en los repositorios
que tiene por defecto configurados vía Internet
(http://repo1.maven.org/maven2).

También se puede añadir una etiqueta en el pom.xml para indicarle


otros repositorios en los que buscar, como veremos mas adelante.

Todo lo que encuentre en los repositorios remotos maven se lo


descargara y quedará cacheado en el repositorio local para hacer más
rápidos próximos accesos a esas dependencias.

Así que iremos añadiendo un elemento <dependency> dentro del


<dependencies> para cada librería de nuestro proyecto. En principio si ya
hemos definido todas nuestras dependencia podríamos compilar nuestro
proyecto con un sencillo mvn compile.

Es muy probable sobre todo porque hablamos de proyectos que se han


desarrollado sin usar maven, que encontremos problemas a la hora de
describir nuestras dependencias en el pom.xml de forma que maven las
encuentre en los repositorio remotos (sobre todo si son propias claro
estas no las encontrara). El artifactId, groupId y la versión son la
clave para que maven se pueda identificar la dependencia que ponemos
no corresponde con los que tienen las librerías en los repositorios.

Existen algunos sitios en internet que puden facilitarnos la tarea de

Ejemplo del uso de Maven Revisión 1.0


Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 10
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

descripción de las dependencias en el pom.xml:


1. http://www.mvnrepository.com/
2. http://www.javacio.us/
3. Tambien podemos usar la utilidad para añdir dependencias de
alguno de los plugins de eclipse para maven:
1. http://m2eclipse.codehaus.org/
2. http://code.google.com/p/q4e/

Si despues de exponer todas las dependencias en el pom.xml no


conseguimos que maven compile y empaquete los fuentes bien por no
encontrar dependencias (de terceros o propias) tendremos que
desplegarlas en algun repositorio de librerias maven. Esto se puede hacer
de difrentes formas:

1. Para instalar las dependenciasa en nustro repositorio local:


mvn -e install:install-file -Dfile=./target/myjar-1.0.jar
-DgroupId=es.juntadeandalucia.cice
-DartifactId=apiPropiaDeEjemplo
-Dversion=1.0
-Dpackaging=jar

2. Para desplegarlo a un repositorio remoto podemos usar el goal de


maven deploy:deploy-file o de forma mas sencilla usando la
interface web de una aplicación que haga las funciones de
repositorio remoto de maven, por ejemplo artifactory:
http://www.jfrog.org/sites/artifactory/1.2/

Para usar esto repositorio remoto nuestro o algun otro de los


existentes por einternet añadiremos nuestro pom.xml las siguientes lineas
donde se indican tres repositorios de donde buscar componentes.

<repositories>
<repository>
<id>Viavansi</id>
<name>viavansi-repo</name>
<url>http://srvrepositorio.junta-andalucia.es/repository/</url>
</repository>
<repository>
<id>JuntaEnInternet</id>
<name>viavansi-repo</name>

Ejemplo del uso de Maven Revisión 1.0


Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 11
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

<url>http://srvrepositorio.junta-andalucia.es/repository/</url>
</repository>
<!-- Para la entrega
<repository>
<id>Junta</id>
<name>viavansi-repo</name>
<url>http://srvrepositorio.junta-andalucia.es/repository/</url>
</repository>-->
<repository>
<id>apache-repo</id>
<name>apache-repo</name>
<url>http://myfaces.zones.apache.org/dist/maven-repository</url>
</repository>
</repositories>

En http://myfaces.zones.apache.org/dist/maven-repository maven
encontrara las librerías de myfaces y tomahawk.

El proceso ha seguir después de poner los repositorios de los que


tiraremos es ir añadiendo todas las dependencias al pom.xml. Estas son
las dependencias que tiene formul@, que eran las librerías que esta
aplicación tenia antes de empezar a crear el proyecto con maven.

<dependencies>
<dependency>
<groupId>com.viavansi</groupId>
<artifactId>viavansi-framework</artifactId>
<version>1.0.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.viavansi</groupId>
<artifactId>viavansi-firma</artifactId>
<version>1.0.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.viavansi</groupId>
<artifactId>viavansi-jsftools</artifactId>
<version>1.0.1</version>

Ejemplo del uso de Maven Revisión 1.0


Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 12
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.viavansi</groupId>
<artifactId>fop</artifactId>
<version>0.92-viavansi</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>es.juntadeandalucia</groupId>
<artifactId>trewa</artifactId>
<version>1.3.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>es.juntadeandalucia</groupId>
<artifactId>ApiFirmaCliente</artifactId>
<version>4.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>es.juntadeandalucia</groupId>
<artifactId>clientepfirma</artifactId>
<version>1.1.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.myfaces.core</groupId>
<artifactId>myfaces-impl</artifactId>
<version>1.1.3</version>
<scope>compile</scope>
</dependency>

Ejemplo del uso de Maven Revisión 1.0


Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 13
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

<dependency>
<groupId>org.apache.myfaces.core</groupId>
<artifactId>myfaces-api</artifactId>
<version>1.1.3</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.myfaces.tomahawk</groupId>
<artifactId>tomahawk</artifactId>
<version>1.1.3</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.4</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>xmlbeans</groupId>
<artifactId>xbean</artifactId>
<version>2.1.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>javax.xml</groupId>
<artifactId>jaxrpc-api</artifactId>
<version>1.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.axis</groupId>
<artifactId>axis</artifactId>
<version>1.4</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>batik</groupId>

Ejemplo del uso de Maven Revisión 1.0


Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 14
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

<artifactId>batik-extension</artifactId>
<version>1.6</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>jep</groupId>
<artifactId>jep</artifactId>
<version>2.24</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>dwr</groupId>
<artifactId>dwr</artifactId>
<version>1.1.3</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>1.0-jsr-04</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>1.2</version>
<scope>compile</scope>
</dependency>
</dependencies>

Después de poner todas las dependencias si ejecutamos mvn compile


maven lo primero que hará será mirar si esas se encuentran en el
repositorio local y si no los encuentra buscará en los otros que hemos
definido.

Por ejemplo la librería de tomahawk irá a buscarla en el repositorio


http://myfaces.zones.apache.org/dist/maven-repository y creara la
estructura necesaria en el local para la próxima vez. Después podemos
ver en /home/usuario/.m2/repository/org/apache/myfaces las

Ejemplo del uso de Maven Revisión 1.0


Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 15
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

subcarpetas con la librería de tomahawk de la versión 1.1.3.

El caso es igual para la librería viavansi-firma-1.0.1.jar que se


encuentra en el repositorio viavansi-repo.

6. EMPAQUETAMIENTO DEL PROYECTO.

Un proyecto se empaqueta mediante el comando mvn package lo que


crea un archivo con el tipo de empaquetamiento que pusimos en la
etiqueta <packaging> del pom.xml.

Estos tienen que ser lógicamente formatos standard (jar, war, ejb3)
para los que maven tiene sus propios plugin.

Si nuestro proyecto es en realidad un proyecto ejb donde solo tenemos


la capa de negocio (enterprise beans de sesión) y necesitamos
empaquetarlo como .ejb para posteriormente desplegarlo indicaremos en
la etiqueta <packaging> que el tipo de empaquetamiento es ejb (hasta la
versión 2.1) o ejb3 y al ejecutar mvn package se creara el archivo .ejb o
.ejb3 correspondiente en la carpeta target del proyecto.

Par un empaquetamiento war o jar no necesitamos añadir nada más


pero para los ejb necesitamos añadir al pom.xml la información de los
plugins maven-ejb-plugin (si es hasta la 2.1) o maven-ejb3-plugin (para
la 3.0).

En el caso de Formul@ el empaquetamiento que necesitamos para


luego desplegarlo es war como ya indicamos al crear el proyecto. Si
ejecutamos mvn package en la carpeta del proyecto nos creará en la
Ejemplo del uso de Maven Revisión 1.0
Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 16
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

carpeta ./target/formula.war

En el punto 7 explicaremos como se configuran los plugin.

7. PLUGINS DE MAVEN

Maven dispone de una gran cantidad de plugins. Cada uno de los


comando anteriormente usados son lo que en maven se definen como
'goals' y pertenecen a ciertos plugins.

La notación para usar estos goals es plugin:goal pero muchas veces


se puede omitir el goal y llamando con el plugin ya maven sabe cual es el
goal por defecto a ejecutar.

Muchos de estos plugins se pueden usar sin tener que indicarlos en el


pom.xml. Son los que pertenecen al núcleo de maven. Otros hay que
especificarlos para poder usarlos. Además podemos cambiar la
configuración de los plugin añadiéndolos al pom.xml.

Plugins destacables son: Compiler, Install, Deploy, SCM, Archetype,


Site etc.

Para ilustrar el ejemplo podemos ver como se indica que vamos a usar
el plugin SCM que usa maven para comunicarse con sistemas de control
de versiones (CVS, Subversion).

<build>
<finalName>myapp</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-scm-plugin</artifactId>
<version>1.0-beta-3</version>
</plugin>
</plugins>
<build>

Ejemplo del uso de Maven Revisión 1.0


Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 17
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

Esto nos daría la posibilidad e ejecutar los goals del plugin scm de
maven para trabajar con un repositorio que también se le indicaría en el
pom.xml:

<scm>
<!-- UN SUBVERSION CON APACHE -->
<connection>

scm:svn:http://RepositorioDeEntrega/repos/formula/tags/1.0.0/formula
</connection>
<developerConnection>

scm:svn:http://RepositorioDeEntrega/repos/formula/tags/1.0.0/formula
</developerConnection>
<scm>

Otro ejemplo sería el del plugin Site que se usa para generar el portal
maven para el proyecto.

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<configuration>
<locales>es_ES</locales>
</configuration>
</plugin>

El plugin Site es el que usaremos para que maven cree


automáticamente un portal web con la información del proyecto. Con el
comando mvn site se creará una carpeta targe/site con todos los html y
recursos del sitio.

No entraremos en este documento a explicar la configuración y diseño


de este portal, para lo que se usa el fichero site.xml. Este tema se trata
más en profundidad en el documento 'Informe Sobre el uso de Maven'.

8. OTRAS INFORMACIONES

Ejemplo del uso de Maven Revisión 1.0


Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 18
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

En el pom.xml podemos añadir otras informaciones que pueden ser


interesantes como la organización, los desarrolladores, listad de
distribución que se usen para el proyecto, contribuciones etc.

ej1: Organización
<organization>
<name>Consejeria de Medio Ambiente. Junta de
Andalucía</name>
<url>http://www.cma.junta-
andalucia.es/medioambiente/site/web/</url>
</organization>

ej2: Lista de distribución de corréo de Spring.


<mailingLists>
<mailingList>
<name>Spring User List</name>
<archive>http://sourceforge.net/mailarchive/forum.php?
forum_id=30287
</archive>
</mailingList>
</mailingLists>

ej3: Desarrolladores.
<developers>
<developer>
<id>jechaverria</id>
<name>Javier Echeverria Usua</name>
<email>jecheverria@avansi.com</email>
<roles>
<role>Jefe de proyectos</role>
<role>Analista</role>
</roles>
<organization>Viavansi</organization>
<timezone>+1</timezone>
</developer>
</developers>

ej4: Contribuciones

Ejemplo del uso de Maven Revisión 1.0


Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 19
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

<contributors> <!-- Para configurar la sección de contributors -->


<contributor>
<name>XXX XXX XXX</name>
</contributor>
</contributors>

9. GENERACIÓN DEL SITIO WEB

Uno de los puntos más interesantes de maven es la generación de


sitios web con documentación para los proyectos. En maven se pueden
generar un sitio web para nuestro proyecto simplemente ejecutando el
goal site ej. mvn site.

Previamente tenemos que saber que al igual que para trabajar con el
código del proyecto o de las pruebas, para generar el sitio web también
hay que respetar una estructura de carpetas predefinidas, que comienza
con la carpeta ./src/site/. Dentro de esta carpeta encontraremos un
fichero site.xml que junto con la información del pom.xml se usará para
generar el sitio. Además de este fichero dentro de ./src/site/ se
encuentran otras carpetas que separan según el tipo los elementos que se
usaran para la generación del maven y que recibirán un tratamiento
distinto.

Ejemplo del uso de Maven Revisión 1.0


Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 20
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

La estructura de directorios que debemos tener con los ficheros para


generar nuestro sitio web es la siguiente:

site Contiene el site.xml que define la estructura del portal

site/apt Esta carpeta contiene ficheros con formato apt que ses un formato
tipo wiki para escribir documentos de texto estructurados de forma
simple. La referencia a este formato la podemos encontrar en esta
url: http://maven.apache.org/guides/mini/guide-apt-format.html

site/fml Esta carpeta contiene ficheros de formato FAQ. Un formato xml


simple para gestión de FAQs.

site/xdoc Esta carpeta contiene ficheros xml. Estos ficheros son traducidos
automáticamente por maven a páginas html. Usaremos este sistema
para crear una página propia dentro del sitio web que acceda a
documentos guardados en Alfresco junto con las que genera maven.

site/resources Aquí se guardan todos los recursos que queremos que se copien al
sitio web cuando se genere, y que no necesitan ningún otro
tratamiento. Por ejemplo las css, scripts, imágenes, etc.

En la siguiente imagen se puede ver los ficheros y carpetas que hemos


creado para nuestro sitio web:

Empezaremos dando un vistazo al site.xml que hemos usado para


formul@:

“site.xml”
<?xml version="1.0" encoding="UTF-8"?>
Ejemplo del uso de Maven Revisión 1.0
Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 21
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

<project name="F@rmula">
<publishDate position="navigation-bottom" format="dd_MM_yyyy"/>
<bannerLeft>
<name>F@rmula. Consejería de Medio Ambiente</name>
<src>/images/cab_formula.gif</src>
<href>http://www.juntadeandalucia.es/repositorio</href>
</bannerLeft>
<bannerRight>
<src>/images/logoviavansi.gif</src>
<href>http://www.viavansi.com/</href>
</bannerRight>

<body>

<links>
<item name="Desarrollado por viavansi"
href="http://www.viavansi.com" />
<item name="Repositorio Junta de Andalucia"

href="http://www.juntadeandalucia.es/repositorio"/>
<item name="Maven" href="http://maven.apache.org/"/>
</links>

<menu name="F@rmula v1.0.0">


<item name="Introducción" href="index.html"/>
<item name="Documentación" href="documentacion.html"/>
<item name="Análisis" href="analisis.html"/>
</menu>

<menu name="Informes" ref="reports" />

</body>
</project>

Los ficheros .apt (almost plain text) son un formato de texto sencillo
en el que se pueden definir páginas de forma sencilla. Maven se encarga
de interpretar estos ficheros y traducirlos a xdocs.

Aquí se puede ver el contenido del index.apt.


Ejemplo del uso de Maven Revisión 1.0
Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 22
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

------
Introducción
------
Viavansi
------
Date

Plataforma de tramitación interna para la Consejería de Medio Ambiente


de la Junta de Andalucía

La aplicación formul@ es un tramitador telemático diseñado para la


Consejería de Medio Ambiente de la Junta de Andalucía.

La aplicación principal se divide en 2 bloques principales:

* Una parte pública: conforma la parte pública de la aplicación a la


cuál tienen acceso los solicitantes de las tramitaciones telemática.

* Una parte de administración accesible solo por el personal autorizado


de la Consejería de Medio Ambiente y destinada la gestión y
administración de los procedimientos telemáticos.

Al ejecutar mvn site nos genera una carpeta con el sitio web completo
bajo la ruta target/site la cual podemos ver en la siguiente imagen.

Ejemplo del uso de Maven Revisión 1.0


Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 23
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

Para tocar los estilos hemos añadido en la carpeta


src/site/resources/css/ el fichero site.css. Este fichero contiene con los
estilos que previamente cogimos de la css por defecto que usa el plugin
site y luego le tocamos los colores. No hace falta tocar las páginas y
fichero xdoc, apt del sitio porque el ficheor site.css es uno de los que son
añadidos siempre al generar las páginas como hoja de estilo en todas las
páginas.

10.INFORMES PARA ANALIZAR LA CALIDAD.

En Maven existen varios plugins que se pueden añadir para analizar la


calidad del software como son:
Ejemplo del uso de Maven Revisión 1.0
Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 24
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

Checkstyle: Informe sobre el estilo del código.


PMD: Verificación de reglas en el código.
CPD: Detección de código duplicado.
Test De Cobertura: informe sobre que parte del código esta cubierto
por las pruebas de junit.
Surefire: Resultado de las pruebas de junit.
Source xref: informe html de las referencias entre el código Java.
Tag list: informe de varias etiquetas encontradas en el código. (por ej:
FIXME, TODO etc...).
Javadoc: Javadoc de la aplicación.

Para añadir estos informes al sitio web lo único que hay que hacer es
añadir los plugins necesarios al pom.xml y una sección nueva
<reporting>.

Para ver ya el proyecto completo con sus plugins y el resto de


información mejor nos vamos ya a la sección siguiente con el pom.xml
completo.

11.FICHERO DESCRIPTOR PARA FORMULA. POM.XML

<?xml version="1.0"?><project>
Ejemplo del uso de Maven Revisión 1.0
Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 25
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

<modelVersion>4.0.0</modelVersion>
<groupId>com.viavansi</groupId>
<artifactId>formula</artifactId>
<packaging>war</packaging>
<name>Formula</name>
<version>1.0</version>
<url>http://maven.apache.org</url>
<developers>
<developer>
<id>borrego</id>
<name>Felix G. Borrego</name>
<email>fgarcia@avansi.com</email>
<roles>
<role>Arquitecto</role>
<role>Desarrollador</role>
<role>Analista</role>
</roles>
<organization>Viavansi</organization>
<timezone>+1</timezone>
</developer>
<developer>
<id>jechaverria</id>
<name>Javier Echeverria Usua</name>
<email>jecheverria@avansi.com</email>
<roles>
<role>Jefe de proyectos</role>
<role>Analista</role>
</roles>
<organization>Viavansi</organization>
<timezone>+1</timezone>
</developer>
<developer>
<id>jorge</id>
<name>Jorge Torres Chacon</name>
<email>jtorres@avansi.com</email>
<roles>
<role>Desarrollador</role>
<role>Analista</role>
</roles>
<organization>Viavansi</organization>
<timezone>+1</timezone>
</developer>
<developer>
<id>lcruz</id>
Ejemplo del uso de Maven Revisión 1.0
Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 26
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

<name>Luis Migel Cruz Renero</name>


<email>lcruz@avansi.com</email>
<roles>
<role>Desarrollador</role>
<role>Analista</role>
</roles>
<organization>Viavansi</organization>
<timezone>+1</timezone>
</developer>
<developer>
<id>mnavarro</id>
<name>Manuel Navarro Almuedo</name>
<email>mnavarro@avansi.com</email>
<roles>
<role>Analista</role>
</roles>
<organization>Viavansi</organization>
<timezone>+1</timezone>
</developer>
</developers>

<organization>
<name>Consejeria de Medio Ambiente. Junta de Andalucía</name>
<url>http://www.cma.junta-andalucia.es/medioambiente/site/web/</url>
</organization>

<scm>

<connection>scm:svn:http://RepositorioDeEntrega/repos/formula/tags/1.0.0/formula</
connection>

<developerConnection>scm:svn:http://RepositorioDeEntrega/repos/formula/tags/1.0.0/
formula</developerConnection>
</scm>

<distributionManagement>
<site>
<id>deployEnLocal</id>
<name>deployEnLocal</name>
<url>file:///home/felipe/alfresco/tomcat/webapps/formula_v2.war</url>
</site>
</distributionManagement>

<build>
<finalName>formula</finalName>

Ejemplo del uso de Maven Revisión 1.0


Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 27
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>xmlbeans-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>xmlbeans</goal>
</goals>
</execution>
</executions>
<inherited>true</inherited>
<configuration>
<schemaDirectory>src/main/xsd</schemaDirectory>
</configuration>
</plugin>
<plugin>
<artifactId>maven-eclipse-plugin</artifactId>
<version>2.2</version>
<configuration>
<wtpversion>1.0</wtpversion>
</configuration>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.4</source>
<target>1.4</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-scm-plugin</artifactId>
<version>1.0-beta-3</version>
<configuration>
<goals>install</goals>
<checkoutDirectory>${basedir}/src</checkoutDirectory>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<configuration>
<locales>es_ES</locales>
Ejemplo del uso de Maven Revisión 1.0
Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 28
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

<inputLocales>es_ES</inputLocales>
<outputLocales>es_ES</outputLocales>
<inputEncoding>ISO-8859-1</inputEncoding>
<outputEncoding>ISO-8859-1</outputEncoding>
<encoding>ISO-8859-1</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<executions>
<execution>
<id>clean</id>
<goals>
<goal>clean</goal>
</goals>
</execution>
</executions>
</plugin>
<!--<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<source>1.4</source>
<target>1.4</target>
</configuration>
</plugin>-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-scm-plugin</artifactId>
<version>1.0-beta-3</version>
<configuration>
<goals>install</goals>
<checkoutDirectory>${basedir}/src</checkoutDirectory>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<configuration>
<locales>es_ES</locales>
</configuration>
</plugin>
<plugin>
Ejemplo del uso de Maven Revisión 1.0
Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 29
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<executions>
<execution>
<id>clean</id>
<goals>
<goal>clean</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>

<repositories>
<repository>
<id>viavansi-repo</id>
<name>viavansi-repo</name>
<url>file:///home/felipe/Proyectos/formula_v2/repositorio</url>
</repository>
<repository>
<id>default</id>
<name>default</name>
<url>file:///home/felipe/.m2/repository</url>
</repository>
<repository>
<id>apache-repo</id>
<name>apache-repo</name>
<url>http://myfaces.zones.apache.org/dist/maven-repository</url>
</repository>
</repositories>

<dependencies>
<dependency>
<groupId>com.viavansi</groupId>
<artifactId>viavansi-framework</artifactId>
<version>1.0.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.viavansi</groupId>
<artifactId>viavansi-firma</artifactId>
<version>1.0.1</version>
<scope>compile</scope>
Ejemplo del uso de Maven Revisión 1.0
Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 30
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

</dependency>
<dependency>
<groupId>com.viavansi</groupId>
<artifactId>viavansi-jsftools</artifactId>
<version>1.0.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.viavansi</groupId>
<artifactId>fop</artifactId>
<version>0.92-viavansi</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>es.juntadeandalucia</groupId>
<artifactId>trewa</artifactId>
<version>1.3.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>es.juntadeandalucia</groupId>
<artifactId>ApiFirmaCliente</artifactId>
<version>4.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>es.juntadeandalucia</groupId>
<artifactId>clientepfirma</artifactId>
<version>1.1.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.myfaces.core</groupId>
<artifactId>myfaces-impl</artifactId>
<version>1.1.3</version>
<scope>compile</scope>
</dependency>

Ejemplo del uso de Maven Revisión 1.0


Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 31
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

<dependency>
<groupId>org.apache.myfaces.core</groupId>
<artifactId>myfaces-api</artifactId>
<version>1.1.3</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.myfaces.tomahawk</groupId>
<artifactId>tomahawk</artifactId>
<version>1.1.3</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.4</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>xmlbeans</groupId>
<artifactId>xbean</artifactId>
<version>2.1.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>javax.xml</groupId>
<artifactId>jaxrpc-api</artifactId>
<version>1.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.axis</groupId>
<artifactId>axis</artifactId>
<version>1.4</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>batik</groupId>
<artifactId>batik-extension</artifactId>
<version>1.6</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>jep</groupId>
Ejemplo del uso de Maven Revisión 1.0
Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 32
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven
Uso de maven tomando la aplicación Formul@ como ejemplo
464486761.odt

<artifactId>jep</artifactId>
<version>2.24</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>dwr</groupId>
<artifactId>dwr</artifactId>
<version>1.1.3</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>1.0-jsr-04</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>1.2</version>
<scope>compile</scope>
</dependency>
</dependencies>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-project-info-reports-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.5</source>
<target>1.5</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-report-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
Ejemplo del uso de Maven Revisión 1.0
Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 33
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven

Uso de maven tomando la aplicación Formul@ como ejemplo


464486761.odt

</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jxr-plugin</artifactId>
</plugin>
<!--
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<source>1.4</source>
<target>1.4</target>
</configuration>
</plugin>-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-pmd-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<configuration>
<configLocation>config/maven_checks.xml</configLocation>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>taglist-maven-plugin</artifactId>
<configuration>
<tags>
<tag>TODO</tag>
<tag>@todo</tag>
<tag>FIXME</tag>
<tag>@fixme</tag>
<tag>todo</tag>
<tag>@TODO</tag>
<tag>fixme</tag>
<tag>@FIXME</tag>
</tags>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
Ejemplo del uso de Maven Revisión 1.0
Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 34
Últ. edición por: Fecha última edición: 22/01/2006 08:01
Ejemplo del uso de Maven

Uso de maven tomando la aplicación Formul@ como ejemplo


464486761.odt

</plugin>
</plugins>
</reporting>
</project>

Ejemplo del uso de Maven Revisión 1.0


Creado por: Javier Echeverría Usúa Fecha creación: 18/01/2007 08:21 Página 35
Últ. edición por: Fecha última edición: 22/01/2006 08:01

Vous aimerez peut-être aussi