Programing

mvnw 및 mvnw.cmd 파일의 목적은 무엇입니까?

lottogame 2020. 5. 7. 07:56
반응형

mvnw 및 mvnw.cmd 파일의 목적은 무엇입니까?


나는 봄 부팅 응용 프로그램을 만들 때 나는 볼 수 있었다 mvnwmvnw.cmd프로젝트의 루트에 파일을 저장합니다. 이 두 파일의 목적은 무엇입니까?


이 파일은 Maven 래퍼 에서 가져온 것 입니다. Gradle 래퍼 와 비슷하게 작동합니다 .

이를 통해 경로에 Maven을 설치하고 표시하지 않고도 Maven 프로젝트를 실행할 수 있습니다. 찾지 못한 경우 올바른 Maven 버전을 다운로드합니다 (사용자 홈 디렉토리에서 기본적으로 알고있는 한).

mvnw파일은 리눅스 (bash는) 용이고는 mvnw.cmdWindows 환경을위한 것입니다.


필요한 모든 Maven Wrapper 파일을 만들거나 업데이트하려면 다음 명령을 실행하십시오.

mvn -N io.takari:maven:wrapper

다른 버전의 maven을 사용하려면 다음과 같이 버전을 지정할 수 있습니다.

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

두 명령은 (는) 메이븐 필요 PATH(메이븐에 경로를 추가 binPath당신은 이미 당신이 사용할 수있는 프로젝트에 mvnw이있는 경우 시스템 변수에) ./mvnw대신 mvn명령에.


Command mvnw~/.m2/wrapper처음 사용시 기본적으로 다운로드되는 Maven을 사용합니다.

Maven이있는 URL은 각 프로젝트에서 .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

Maven 버전을 업데이트하거나 변경하려면 다음을 호출하십시오 ( --non-recursive멀티 모듈 프로젝트를 기억하십시오 ).

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

또는 .mvn/wrapper/maven-wrapper.properties수동으로 수정하십시오 .

Maven을 사용하여 처음부터 래퍼를 생성하려면 (이미 PATH실행 되어 있어야합니다 .

mvn io.takari:maven:wrapper -Dmaven=3.3.9 

지금까지 가장 좋은 옵션은 maven 컨테이너를 빌더 도구로 사용하는 것입니다. 이와 mvn.sh같은 스크립트로 충분합니다.

#!/bin/bash
docker run --rm -ti \
 -v $(pwd):/opt/app \
 -w /opt/app \
 -e TERM=xterm \
 -v $HOME/.m2:/root/.m2 \
 maven mvn "$@"

참고 URL : https://stackoverflow.com/questions/38723833/what-is-the-purpose-of-mvnw-and-mvnw-cmd-files

반응형