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ó?
89
subproject/subsubproject
como parámetromaven -rf <module name> clean install
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)install
objetivo, 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 ejecutarinstall
compilaciones, 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 ustedpackage
y no lo haceinstall
, usar-rf
no es una opción: tendrá que hacer toda la compilación.Aqui esta el ejemplo
mvn clean install -rf :your-module
fuente
puede reanudar la compilación desde cualquier módulo que desee utilizando el
-rf
comando. Por ejemplo, si su compilación falló en myproject-proxy, puede usar el siguiente comando:mvn -rf myproject-proxy clean install
fuente
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
fuente
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
fuente
-rf
no es la abreviatura de--remove-from
. Es la abreviatura de--resume-from
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.
fuente