Una guía rápida para Maven Wrapper

1. Información general

El Maven Wrapper es una excelente opción para proyectos que necesitan una versión específica de Maven (o para usuarios que no quieren instalar Maven en absoluto). En lugar de instalar muchas versiones en el sistema operativo, podemos simplemente usar el script de envoltura específico del proyecto.

En este artículo rápido, mostraremos cómo configurar un Maven Wrapper para un proyecto Maven existente.

2. Configuración de Maven Wrapper

Hay dos formas de configurarlo en un proyecto, donde la más simple es usar un complemento apropiado para automatizarlo o aplicando la instalación manual.

2.1. Enchufar

Usemos este complemento de Maven Wrapper para realizar la instalación automática en un proyecto simple de Spring Boot.

Primero, debemos ir a la carpeta principal del proyecto y ejecutar este comando:

mvn -N io.takari:maven:wrapper

También podemos especificar la versión de Maven:

mvn -N io.takari:maven:wrapper -Dmaven=3.5.2

La opción -N significa –no recursivo, de modo que el contenedor solo se aplicará al proyecto principal del directorio actual, no a ningún submódulo.

Después de ejecutar el objetivo, tendremos más archivos y directorios en el proyecto:

  • mvnw : es un script de shell ejecutable de Unix que se usa en lugar de un Maven completamente instalado
  • mvnw.cmd : es la versión por lotes del script anterior
  • mvn : la carpeta oculta que contiene la biblioteca Java de Maven Wrapper y su archivo de propiedades

2.2. Manual

Con un enfoque manual, podemos copiar archivos y carpetas vistos arriba de otro proyecto a la carpeta principal del proyecto actual.

Luego, necesitamos especificar la versión de Maven para usar en el archivo de propiedades del contenedor ubicado en el archivo .mvn / wrapper / maven-wrapper.properties .

Por ejemplo, nuestro archivo de propiedades tiene la siguiente línea:

distributionUrl=//repo1.maven.org/maven2/org/apache/maven/apache-maven/3.5.2/apache-maven-3.5.2-bin.zip

En consecuencia, se descargará y utilizará la versión 3.5.2.

3. Casos de uso

El contenedor debería funcionar con diferentes sistemas operativos como:

  • Linux
  • OSX
  • Ventanas
  • Solaris

Después de eso, podemos ejecutar nuestros objetivos de esta manera para el sistema Unix:

./mvnw clean install

Y el siguiente comando para Batch:

./mvnw.cmd clean install

Si no tenemos el Maven especificado en las propiedades del contenedor, se descargará e instalará en la carpeta $ USER_HOME / .m2 / wrapper / dists del sistema.

Ejecutemos nuestro proyecto Spring-Boot:

./mvnw spring-boot:run

El resultado es el mismo que para un Maven completamente instalado:

Nota: usamos el ejecutable mvnw en lugar de mvn, que ahora es el programa de línea de comandos de Maven.

4. Conclusión

En este tutorial, hemos visto cómo configurar y usar Maven Wrapper en un proyecto de Maven.

Como siempre, el código fuente de este artículo se puede encontrar en GitHub.