miércoles, 22 de agosto de 2012

Agregar war como dependencia a un proyecto maven

El problema:

Tenemos un projecto war construido con maven que queremos como dependencia de un proyecto jar.

Si simplemente declaramos la dependencia:

       <dependency>
            <groupId>org.organizacion</groupId>
            <artifactId>proyectito-war</artifactId>
            <version>6.0.1</version>
            <type>war</type>

      </dependency>
       


El proyecto war queda agregado pero las clases no quedan en el classpath.

La solución:

Abrimos el pom de nuestro proyecto war agregamos al build un plugin:

         
                    <plugin>
                        <artifactId>maven-war-plugin</artifactId>
                        <version>2.1.1</version>
                        <configuration>
                            <attachClasses>true</attachClasses>
                            <classesClassifier>classes</classesClassifier>
                        </configuration>
                    </plugin>               
           



Con esto maven nos generara un jar con las clases de nuestro proyecto (el war se seguira generando normalmente).
Hacemos un mvn clean install para actualizar el war en el repositorio de maven.

Luego en el proyecto jar donde estamos agregando la dependencia sustituimos la del war y ponemos:


       <dependency>
            <groupId>org.organizacion</groupId>
            <artifactId>proyectito-war</artifactId>
            <version>6.0.1</version>
           <classifier>classes</classifier>
      </dependency>
       



 Con esto basta

No hay comentarios:

Publicar un comentario en la entrada