web-dev-qa-db-fra.com

Que fait exactement mvn installer dans maven

Je viens juste de commencer à utiliser Maven et on m'a dit de faire mvn install dans un répertoire spécifique.

Que fait exactement mvn install?

Je pense qu'il cherche pom.xml dans le dossier actuel et commence à suivre les instructions spécifiées dans ce fichier. Est-ce exact?

148
Rajeshwar

Comme vous le savez peut-être, Maven est un outil d'automatisation de la construction fourni par Apache qui fait plus que gérer les dépendances. Nous pouvons le créer en tant qu'homologue de Ant et Makefile, qui télécharge toutes les dépendances requises.

Sur un mvn install, il encadre une arborescence de dépendances basée sur la configuration du projet pom.xml sur tous les sous-projets du super pom.xml (le POM racine) et télécharge/compile tous les composants nécessaires dans un répertoire appelé .m2 sous le dossier de l'utilisateur. Ces dépendances devront être résolues pour que le projet soit construit sans erreur, et mvn install est un utilitaire pouvant télécharger la plupart des dépendances.

De plus, Maven contient d’autres outils tels que dependency:resolve qui peuvent être utilisés séparément dans tous les cas. Le cycle de vie de construction du MVN est le suivant:

  1. process-resources
  2. compile
  3. process-test-resources
  4. test-compile
  5. test
  6. package
  7. install
  8. deploy

La phase de test de ce mvn peut être ignorée en utilisant un indicateur -DskipTests=true.

99
uniqrish

Avez-vous consulté l'un des documents Maven, par exemple, le documents du plug-in d'installation maven ?

Version Nutshell: il construira le projet et l'installera dans votre référentiel local.

30
Dave Newton

Il lancera tous les objectifs de tous les plugins configurés associés à n’importe quelle phase du cycle de vie par défaut jusqu’à la phase "installer":

https://maven.Apache.org/guides/introduction/introduction-to-the-lifecycle.html#Lifecycle_Reference

7
Puce

L’objectif install:install est fourni par "Apache Maven Install Plugin":

Apache Maven Install Plugin

Le plug-in d'installation est utilisé pendant la phase d'installation pour ajouter des artefacts au référentiel local. Le plug-in d'installation utilise les informations contenues dans le POM (groupId, artifactId, version) pour déterminer l'emplacement correct de l'artefact dans le référentiel local.

Le référentiel local est le cache local où sont stockés tous les artefacts nécessaires à la construction. Par défaut, il se trouve dans le répertoire de base de l'utilisateur (~/.m2/repository), mais l'emplacement peut être configuré dans ~/.m2/settings.xml à l'aide de l'élément <localRepository>.

- Plugin d'installation Apache Maven - Introduction .

Cela dit, le but recherché:

install:install est utilisé pour installer automatiquement l'artefact principal du projet (le JAR, le WAR ou l'EAR), son POM et tout artefact attaché (sources, javadoc, etc.) produit par un projet particulier.

- Plugin d'installation Apache Maven - Introduction .

Pour plus de détails sur l’objectif, veuillez vous reporter à la page Plugin d’installation d’Apache Maven - installer: installer .

Pour plus de détails sur le cycle de vie de la construction en général et sur l'emplacement de l'objectif dans le cycle de vie de la construction, veuillez vous reporter à la page Maven - Introduction au cycle de vie de la construction .

3
Sergey Brunov

-DskipTests=true est la forme abrégée de -Dmaven.test.skip=true

Apportez des modifications dans Setting.xml dans votre dossier . M2. Vous pouvez utiliser link to repo local pour que les fichiers jar une fois téléchargés ne soient plus téléchargés.

<url>file://C:/Users/admin/.m2/repository</url>
 </repository>
2
Jyoti Prakash

Réponse courte

mvn install

  • ajoute tous les artefacts (dépendances) spécifiés dans pom, au localréférentiel (à partir de sources distantes).
0
Daniel Perník