Quelle est la difference entre mvn clean install
et mvn install
?
208
clean
est sa propre phase de cycle de vie de construction (qui peut être considérée comme une action ou une tâche) dans Maven. mvn clean install
indique à Maven d'effectuer la clean
phase dans chaque module avant d'exécuter la install
phase pour chaque module.
Cela efface tous les fichiers compilés que vous avez, en vous assurant que vous compilez vraiment chaque module à partir de zéro.
clean
est dans un cycle de vie séparé , il n'est donc pas appelé par défaut.Maven vous permet de spécifier des objectifs ou des phases de cycle de vie sur la ligne de commande (ou les deux).
clean
etinstall
sont deux phases de cycle de vie différentes , auxquelles différentes exécutions de plug-in sont liées (par défaut ou explicitement dans votre pom.xml )La
clean
phase, par convention, est destinée à rendre une version reproductible, c'est-à-dire qu'elle nettoie tout ce qui a été créé par les versions précédentes. Dans la plupart des cas, il le fait en appelantclean:clean
, ce qui supprime le répertoire lié à${project.build.directory}
(généralement appelé "cible")la source
Vous pouvez appeler plus d'un
objectif cibleavec maven.mvn clean install
appelle d'clean
abord, puisinstall
. Vous devez nettoyer manuellement, car le nettoyage n'est pas unobjectif ciblestandard et n'est pas exécuté automatiquement à chaque installation.clean
supprime le dossier cible - il supprime tous les fichiers de classe, les documents java, les fichiers jar, les rapports, etc. Si vous ne le faites pasclean
, alors maven ne fera que "faire ce qui doit être fait", comme s'il ne compilait pas les classes lorsque les fichiers source correspondants n'avaient pas changé (en bref).nous l'appelons cible en fourmi et objectif en maven
la source
Pour respecter les termes Maven:
http://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html#Lifecycle_Reference
la source
Idem pour @Andreas_D, en plus si vous dites mettre à jour Spring d'une version à une autre dans votre projet sans faire de nettoyage, vous vous retrouverez avec les deux dans votre artefact. Je me suis beaucoup impliqué dans ce développement Flex avec Maven.
la source