Quelles sont exactement les différences entre mvn clean package
et mvn clean install
? Lorsque j'exécute ces deux commandes, elles semblent toutes les deux faire la même chose.
Quelles sont exactement les différences entre mvn clean package
et mvn clean install
? Lorsque j'exécute ces deux commandes, elles semblent toutes les deux faire la même chose.
Réponses:
Eh bien, les deux vont nettoyer. Cela signifie qu'ils vont supprimer le dossier cible. La vraie question est quelle est la différence entre le package et l'installation?
package
compilera votre code et le conditionnera également. Par exemple, si votre pom indique que le projet est un bocal, il créera un bocal pour vous lorsque vous le conditionnerez et le placerez quelque part dans le répertoire cible (par défaut).
install
compilera et conditionnera, mais il placera également le package dans votre référentiel local. Cela permettra à d'autres projets de s'y référer et de le récupérer dans votre référentiel local.
mvn clean install
n'est pas plus rapide que mvn package
.
Ce que fait Clean (commun dans les deux commandes) - supprime tous les fichiers générés par la version précédente
En ce qui concerne la différence entre le package de commandes et l' installation , vous devez d'abord comprendre le cycle de vie d'un projet maven
Ce sont les phases de cycle de vie par défaut dans Maven
Comment Maven fonctionne, si vous exécutez une commande pour l'une des phases du cycle de vie, il exécute chaque phase du cycle de vie par défaut dans l'ordre, avant d'exécuter la commande elle-même.
ordre d'exécution
valider >> compiler >> tester (facultatif) >> package >> vérifier >> installer >> déployer
Ainsi, lorsque vous exécutez le package de commande mvn , il exécute les commandes pour toutes les phases du cycle de vie jusqu'au package
valider >> compiler >> tester (facultatif) >> package
Et comme pour l' installation mvn , il exécute les commandes pour toutes les phases du cycle de vie jusqu'à l'installation, qui comprend également le package
valider >> compiler >> tester (facultatif) >> package >> vérifier >> installer
Donc, ce que cela signifie, les commandes d' installation font tout ce que fait la commande de package et quelques autres (installez le package dans le référentiel local, pour l'utiliser comme dépendance dans d'autres projets localement)
Source: référence du cycle de vie Maven
le package générera Jar / war selon le fichier POM. install installera le fichier jar généré dans le référentiel local pour les autres dépendances éventuelles.
la phase d' installation vient après la phase de package
Le package et l'installation sont différentes phases du cycle de vie de la construction maven. La phase de package exécutera toutes les phases avant cela et elle s'arrêtera avec le conditionnement du projet sous forme de bocal. De même, la phase d'installation exécutera toutes les phases précédentes et installera enfin le projet localement pour les autres projets dépendants.
Pour comprendre le cycle de vie de la construction de maven, veuillez consulter le lien suivant https://ayolajayamaha.blogspot.in/2014/05/difference-between-mvn-clean-install.html
package
ajoutera emballé jar
ou war
à votre target
dossier, nous pouvons le vérifier quand, nous viderons le dossier cible (en utilisant mvn clean
) puis exécuter mvn package
.
install
fera tout ce qui se package
fait, en plus il ajoutera également un packaged jar
ou war
un dépôt local. Nous pouvons le confirmer en archivant votre .m2
dossier.
package
etinstall
.