Maven 로컬 repo 위치를 얻는 방법이 있습니까?
다음 명령을 사용하면 Maven이 특정 설정 파일을 사용하도록 강제 할 수 있습니다.
mvn -s < path to settings file >
settings.xml
파일을 편집 하여 저장소 위치를 설정할 수 있다는 것을 알고 있지만 Maven 명령으로 현재 기본값을 얻을 수 있습니까?
답변
로컬 리포지토리 만 원하는 경우 다음을 시도하십시오.
mvn help:evaluate -Dexpression=settings.localRepository | grep -v '\[INFO\]'
편집하다
최근 버전의 Maven 도움말 플러그인 이 출력을 grep 할 필요성을 제거 할 수있는 evaluate
라는 목표에 대한 유용한 매개 변수를 도입했기 때문에 몇 년 후에 이것을 다시 검토 forceStdout
하고 있습니다.
mvn help:evaluate -Dexpression=settings.localRepository -q -DforceStdout
답변
예, -X
또는 --debug
옵션으로 가져올 수 있습니다.mvn -X
...
[DEBUG] Reading global settings from C:\Maven\conf\settings.xml
[DEBUG] Reading user settings from C:\segphault\.m2\settings.xml
[DEBUG] Using local repository at C:\Repo
...
답변
Maven 도움말 플러그인은 로컬 저장소 경로를 포함한 로컬 설정을 표시합니다.
다음 명령을 원합니다.
mvn help:effective-settings
출력은 XML 형식으로 설정을 표시합니다. localRepository 요소를 찾으십시오.
<localRepository xmlns="http://maven.apache.org/SETTINGS/1.1.0">/home/jrs/.mavenRepo</localRepository>
답변
에서 그 동안 당신은 간단한 방법으로 그렇게 할 수 있습니다 :
mvn help:evaluate -Dexpression=settings.localRepository -q -DforceStdout
이를 직접 사용하여 다음과 같은 셸 변수를 할당 할 수도 있습니다.
RESULT=$(mvn help:evaluate -Dexpression=settings.localRepository -q -DforceStdout)
중요 참고 사항 : 최신 버전의 Maven과 물론 최신 버전의 maven-help-plugin을 사용합니다.
여기에는 새 줄이없는 결과가 포함됩니다.
답변
/home/.m2 디렉토리에 있어야하며 폴더가 숨겨져있을 수 있습니다. 따라서 숨겨진 폴더를 보려면 Ctrl + H를 사용해야합니다.
답변
Windows 사용자의 경우
일반적으로 C:\Users\USER_NAME\.m2\repository
.
그러나 mvn help:effective-settings
명령은 반드시 응답 xml에 로컬 경로를 표시합니다.
답변
-X
옵션 을 사용하여 디버그 모드를 활성화하고 사용 중인 로컬 저장소를 언급하는 줄을 찾아 이를 수행 할 수 있습니다 .