java - que - maven tutorial español
¿Qué hace mvn instalar en Maven exactamente hacer (5)
Empecé a usar Maven y me dijeron que mvn install
en un directorio específico.
¿Qué hace mvn install
, exactamente?
Creo que busca pom.xml
en la carpeta actual y comienza a seguir las instrucciones especificadas en ese archivo. ¿Es eso correcto?
¿Has mirado alguno de los documentos de Maven, por ejemplo, los documentos de complemento de instalación maven ?
Versión Nutshell: construirá el proyecto e instalarlo en su repositorio local.
Como ya sabrá, Maven es una herramienta de automatización de compilación proporcionada por Apache que hace más que gestión de dependencias. Podemos convertirlo en un par de Ant y Makefile que descarga todas las dependencias requeridas.
En una mvn install
, enmarca un árbol de dependencias basado en la configuración del proyecto pom.xml
en todos los subproyectos bajo super pom.xml
(el POM raíz) y descarga / compila todos los componentes necesarios en un directorio llamado .m2
debajo del carpeta del usuario. Estas dependencias tendrán que resolverse para que el proyecto se construya sin ningún error, y mvn install
es una utilidad que puede descargar la mayoría de las dependencias.
Además, hay otros utils dentro de la dependency:resolve
Maven dependency:resolve
que se puede usar por separado en cualquier caso específico. El ciclo de vida de construcción del mvn es el siguiente:
-
process-resources
-
compile
-
process-test-resources
-
test-compile
-
test
-
package
-
install
-
deploy
La fase de prueba de este mvn se puede ignorar utilizando un indicador -DskipTests=true
.
Ejecutará todos los objetivos de todos los complementos configurados asociados con cualquier fase del ciclo de vida predeterminado hasta la fase de "instalación":
https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html#Lifecycle_Reference
La install:install
objetivo de install:install
es proporcionado por «Apache Maven Install Plugin»:
Plugin de instalación Apache Maven
El complemento de instalación se usa durante la fase de instalación para agregar artefacto (s) al repositorio local. El complemento de instalación utiliza la información en el POM (
groupId
,groupId
. DeartifactId
) para determinar la ubicación adecuada para el artefacto dentro del repositorio local.El repositorio local es el caché local donde se almacenan todos los artefactos necesarios para la compilación. Por defecto, está ubicado dentro del directorio de inicio del usuario (
~/.m2/repository
) pero la ubicación se puede configurar en~/.m2/settings.xml
usando el elemento<localRepository>
.
Habiendo dicho eso, el propósito exacto del objetivo:
install:install
se usa para instalar automáticamente el artefacto principal del proyecto (el JAR, WAR o EAR), su POM y cualquier artefacto adjunto (fuentes, javadoc, etc.) producido por un proyecto en particular.
Para obtener más detalles sobre el objetivo, consulte el complemento de instalación de Apache Maven - instalar: página de instalación .
Para obtener detalles adicionales sobre el ciclo de vida de la compilación en general y sobre el lugar que ocupa el objetivo en el ciclo de vida de la compilación, consulte la página Maven: Introducción a la compilación del ciclo de vida .
-DskipTests=true
es una forma abreviada de -Dmaven.test.skip=true
Realice cambios en Setting.xml en su carpeta .m2 . Puede usar el enlace al repositorio local para que los frascos que se bajaron una vez no se descarguen una y otra vez.
<url>file://C:/Users/admin/.m2/repository</url>
</repository>