¿Podemos comenzar la compilación maven desde el punto en que falló?

89

Supongamos que estoy haciendo una compilación completa en mi proyecto grande que tiene 7 módulos y en el sexto módulo, la compilación falló porque falló una prueba. ¿Hay alguna forma de iniciar la compilación desde el punto en que falló?

Shekhar
fuente

Respuestas:

134

Puede reanudar la compilación desde el sexto módulo usando -rfo --resume-from:

-rf, --resume-from
          Reanudar el reactor del proyecto especificado

Consulte las Opciones avanzadas del reactor para obtener más detalles.

Pascal Thivent
fuente
Gracias por esto, lo intentaré
Shekhar
1
esto es bueno, para sub-subproyectos solo se usa subproject/subsubprojectcomo parámetro
akostadinov
13
Ejemplo:maven -rf <module name> clean install
Zoltán
9
Esto solo funcionó para mí cuando antepusí el nombre del módulo con dos puntos, por ejemplo mvn -rf :moduleName install. (No estoy seguro exactamente de por qué se necesitan los dos puntos, pero parece serlo, al menos para mi configuración)
Steve Chambers
3
Parece que esto solo funciona si su compilación inicial tenía un installobjetivo, porque la compilación reanudada puede obtener los artefactos que ya se compilaron desde su repositorio local de Maven para resolver las dependencias de ellos. Me parece una mala práctica ejecutar installcompilaciones, ya que termina abarrotando su repositorio local con instantáneas y puede terminar dependiendo de una instantánea más antigua de lo que esperaba. Parece que para las compilaciones en las que solo usted packagey no lo hace install, usar -rfno es una opción: tendrá que hacer toda la compilación.
Frans
13

Aqui esta el ejemplo

mvn clean install -rf :your-module
M Sach
fuente
9

puede reanudar la compilación desde cualquier módulo que desee utilizando el -rfcomando. Por ejemplo, si su compilación falló en myproject-proxy, puede usar el siguiente comando:

mvn -rf myproject-proxy clean install
user3401235
fuente
Necesitaba poner dos puntos para que esto funcione, por ejemplo, -rf: yourModule Vea las otras respuestas.
Gapmeister66
8

mire el resumen de maven y verá los módulos ejecutados y dónde se detiene maven. entonces intente esto:

mvn clean install-Dmaven.test.skip=true -rf :yourModule
Antonio Martín
fuente
-1

Sintaxis: mvn -rf modulename mavengoal o mvn --resume-from modulename mavengoal

Ejemplo: mvn -rf admin-module clean install o mvn --resume-from admin-module clean install

scott_dennis
fuente
-rfno es la abreviatura de --remove-from. Es la abreviatura de--resume-from
Gili
-2

Puede ejecutar la compilación del módulo 6 por separado para ver si aún falla, pero me temo que necesita compilar todos los módulos desde el principio cuando desee ejecutar la compilación "grande".

Editar: Por supuesto, las compilaciones posteriores serán más rápidas porque el código de los módulos 1-5 ya está compilado, a menos que lo ejecutes limpio como parte de tu compilación.

pescado
fuente
Sí ... lo sé ... Pero estaba buscando una manera de comenzar la compilación desde el punto en que falló ...
Shekhar