2012-05-19 19 views
18

tengo 3 experta en proyectosMaven - ¿Cómo construir varios proyectos Maven independiente de un proyecto

  • WebComponents
  • DataComponents
  • ServiceComponents

cuando construyo cada uno de los proyectos que he para ir a cada carpeta y ejecutar mvn clean install en cada uno de los proyectos.

He examinado proyectos de varios módulos y la mayoría de los recursos que veo sugieren que tengo que hacer un cambio en la estructura de mis proyectos existentes.

¿Es posible tener un nuevo proyecto que construirá cada uno de los proyectos independientes sin tener que hacer ningún cambio en nada en el proyecto existente, incluidos sus archivos pom individuales?

Probablemente logre esto escribiendo un archivo por lotes simple que construye todos los proyectos pero ¿es posible usar Maven?

Respuesta

30

Está buscando Maven aggregation without inheritance. Como se muestra en la página referenciada, usted acaba de crear un nuevo POM cuyo empaque es "pom" y que tiene una lista de "módulos". Un módulo es una ruta relativa a otro proyecto Maven:

<project> 
    ... 
    <packaging>pom</packaging> 
    ... 
    <modules> 
    <module>foo</module> <!-- module is in a subdirectory of this project --> 
    <module>../bar</module> <!-- module is a sibling to this project --> 
    <module>../../../other-projects/baz</module> <!-- somewhere else entirely --> 
    </modules> 
</project> 

comportamiento por defecto en la construcción de un pom tales - conocido como un "agregador" - es la construcción de todos los módulos como si hubiera ejecutado en Maven cada directorio de módulos con los mismos argumentos.

5

Si agrega un proyecto agregador en el directorio anterior a los tres proyectos que los nombra como módulos (nombre del módulo = nombre del subdirectorio), los compilará sin necesidad de ningún cambio en sus propios POM. No necesitan referenciarlo como padre.

+0

Esto fue de gran ayuda gracias! – NiranjanBhat

Cuestiones relacionadas