¿Cuál es la diferencia entre mvn clean install
y mvn install
?
208
clean
es su propia fase de ciclo de vida de construcción (que puede considerarse como una acción o tarea) en Maven. mvn clean install
le dice a Maven que haga la clean
fase en cada módulo antes de ejecutar la install
fase para cada módulo.
Lo que esto hace es borrar cualquier archivo compilado que tenga, asegurándose de que realmente esté compilando cada módulo desde cero.
clean
está en un ciclo de vida separado , por lo que no se llama por defecto.Maven le permite especificar objetivos o fases del ciclo de vida en la línea de comando (o ambos).
clean
yinstall
son dos fases diferentes del ciclo de vida , a las que se vinculan diferentes ejecuciones de complementos (ya sea de forma predeterminada o explícitamente en su pom.xml )La
clean
fase, por convención, está destinada a hacer que una compilación sea reproducible, es decir, limpia todo lo creado por compilaciones anteriores. En la mayoría de los casos, lo hace llamandoclean:clean
, lo que elimina el directorio vinculado a${project.build.directory}
(generalmente llamado "destino")fuente
Puedes llamar a más de un
objetivocon maven.mvn clean install
llamaclean
primero, luegoinstall
. Debe limpiar manualmente, porque la limpieza no es unobjetivoobjetivo estándar y no se ejecuta automáticamente en cada instalación.clean
elimina la carpeta de destino: elimina todos los archivos de clase, los documentos de Java, los frascos, los informes, etc. Si noclean
, entonces Maven solo "hará lo que se debe hacer", como si no compilara clases cuando los archivos fuente correspondientes no hayan cambiado (en resumen).lo llamamos objetivo en hormiga y objetivo en maven
fuente
Para seguir con los términos de Maven:
http://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html#Lifecycle_Reference
fuente
Lo mismo ocurre con @Andreas_D, además si dice actualizar Spring de una versión a otra en su proyecto sin hacer una limpieza, terminará con ambos en su artefacto. Me encontré mucho con esto al desarrollar Flex con Maven.
fuente