¿Cuál es el propósito de los archivos mvnw y mvnw.cmd?

Resuelto shaunthomas999 asked hace 8 años • 6 respuestas

Cuando creé una aplicación Spring Boot pude ver mvnwarchivos mvnw.cmden la raíz del proyecto. ¿Cuál es el propósito de estos dos archivos?

shaunthomas999 avatar Aug 02 '16 21:08 shaunthomas999
Aceptado

Estos archivos son del contenedor Maven . Funciona de manera similar al contenedor Gradle .

Esto le permite ejecutar el proyecto Maven sin tener Maven instalado y presente en la ruta. Descarga la versión correcta de Maven si no se encuentra (hasta donde yo sé, de forma predeterminada en el directorio de inicio de su usuario).

El mvnwarchivo es para Linux (bash) y mvnw.cmdes para el entorno Windows.


Para crear o actualizar todos los archivos Maven Wrapper necesarios, ejecute el siguiente comando:

mvn -N io.takari:maven:wrapper

Para utilizar una versión diferente de maven, puede especificar la versión de la siguiente manera:

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

Ambos comandos requieren maven activado PATH(agregue la ruta a maven bina Pathlas Variables del sistema). Si ya tiene mvnw en su proyecto, puede usarlo ./mvnwen lugar de mvnen los comandos.

Dodge avatar Aug 02 '2016 14:08 Dodge

El comando mvnwutiliza Maven que se descarga de forma predeterminada ~/.m2/wrapperen el primer uso.

La URL con Maven se especifica en cada proyecto en .mvn/wrapper/maven-wrapper.properties:

distributionUrl=https://repo1.maven.org/maven2/org/apache/maven/apache-maven/3.3.9/apache-maven-3.3.9-bin.zip

Para actualizar o cambiar la versión de Maven, invoque lo siguiente (recuerde esto --non-recursivepara proyectos de múltiples módulos):

./mvnw io.takari:maven:wrapper -Dmaven=3.3.9 

o simplemente modificar .mvn/wrapper/maven-wrapper.propertiesmanualmente.

Para generar un contenedor desde cero usando Maven (debe tenerlo ya en PATHejecución:

mvn io.takari:maven:wrapper -Dmaven=3.3.9 
Michal Kordas avatar Dec 20 '2016 10:12 Michal Kordas