Estos dias he tenido un pequeño problema, y es que he tenido que crear un multiproyecto en maven 2, pero no sabía a priori como hacerlo. Sabía la teoría… Un directorio de proyecto “Padre”, el cual tiene un pom.xml en el cual hace referencia a los proyectos que lo forman. Y luego, varios directorios de proyectos “Hijo” dentro de “Padre” los cuales son proyectos (llamémosles) normales de maven.
El problema, es que la teoría me la sabía pero en la práctica no encontré ningún sitio que dijeran específicamente cómo se creaba un multiproyecto de maven. No sabía si tendría que hacer algo del estilo: mvn archetype:create -DarchetypeArtifactId=maven-multiproject o qué…
Al final la solución…mucho más sencilla que todo eso y os la relato a continuación.
1.- Crear “a mano” el directorio padre.
2.- Crear los proyectos que lo compondrán dentro del directorio padre. Éstos los crearemos con mvn archetype:create…
3.- Poner el siguiente archivo pom.xml dentro del directorio padre et voilá! ya tenemos nuestro multiproyecto.
A partir de ahí simplemente hacer mvn install, mvn package o lo que queramos desde el directorio del padre.
<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/xsd/maven-4.0.0.xsd”>
<modelVersion>4.0.0</modelVersion>
<groupId>com.etconsultors.padre</groupId>
<version>1.0</version>
<artifactId>padre</artifactId>
<packaging>pom</packaging>
<modules>
<module>hijo1</module>
<module>hijo2</module>
<module>hijo3</module>
</modules>
</project>
Simplemente comentar que se pueden poner tantos modules como se quieran y que el orden importa, es decir, si hijo2 depende de que se cree el jar de hijo1 pues obviamente deberemos ponerlo en el orden correcto. Sobra decir que cada module deberá ser un proyecto maven2 correcto con su pom.xml y todo.
Con esto me despido y pronto os iré poniendo nuevas entregas de maven, que últimamente estoy entretenido con él.
Compártelo