[java] MAVEN_HOME, MVN_HOME 또는 M2_HOME

무엇이 올바른 메이븐 환경 변수 이름이다 : MAVEN_HOME, MVN_HOME또는 M2_HOME?

MAVEN_HOMEM2_HOME 여기 에 대한 몇 가지 세부 정보를 찾았 습니다 . 그러나 나는 또한 MVN_HOME주변에서 보았다 .



답변

나는 개인적으로 M2_HOME.

중요한 것은 $ PATH 환경입니다. Danix의 답변 중 일부를 하이재킹하면 다음과 같은 작업이 가능합니다.

export PATH=/Users/xxx/sdk/apache-maven-3.0.5/bin:$PATH

mvn스크립트는 계산 M2_HOME무엇의 가치가 어쨌든 당신을 위해.


답변

M2_HOME(등)은 Maven 3.5.0부터 사용되지 않습니다. 자세한 내용은 MNG-5607릴리스 노트 를 참조하십시오.


답변

다음은 내 Maven 설정입니다. 예를 들어 사용할 수 있습니다. Maven을 사용하기 위해 다른 것이 필요하지 않습니다.

M2_HOME은 Maven 2와 3 모두에 사용됩니다.

export M2_HOME=/Users/xxx/sdk/apache-maven-3.0.5
export M2=$M2_HOME/bin
export MAVEN_OPTS="-Xmx1048m -Xms256m -XX:MaxPermSize=312M"
export PATH=$M2:$PATH


답변

MAVEN_HOME 받는다는 1에 사용되는M2_HOME을 받는다는 2를 찾는 데 사용됩니다 . 두 개의 다른 _HOME 변수가 있다는 것은 동일한 시스템에서 둘 다 실행할 수 있음을 의미합니다. 그리고 오래된 mvn.cmd 스크립트 를 확인하면 다음과 같습니다.

@REM ----------------------------------------------------------------------------
@REM Maven2 Start Up Batch script
@REM
@REM Required ENV vars:
@REM JAVA_HOME - location of a JDK home dir
@REM
@REM Optional ENV vars
@REM M2_HOME - location of maven2's installed home dir
@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a key stroke before ending
@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
@REM     e.g. to debug Maven itself, use
@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
@REM ----------------------------------------------------------------------------

저것 좀 봐 @REM M2_HOME - location of maven2's installed home dir

어쨌든이 패턴의 사용은 문서에 따라 maven 3.5에서 더 이상 사용되지 않습니다 .

설치된 다른 Maven 버전과 관련된 M2_HOME 사용 문제 및 단순화를 위해 M2_HOME 사용이 제거되었으며 더 이상 지원되지 않습니다. MNG-5823 , MNG-5836 , MNG-5607

이제 mvn.cmd는 다음과 같습니다.

@REM -----------------------------------------------------------------------------
@REM Apache Maven Startup Script
@REM
@REM Environment Variable Prerequisites
@REM
@REM   JAVA_HOME          Must point at your Java Development Kit installation.
@REM   MAVEN_BATCH_ECHO  (Optional) Set to 'on' to enable the echoing of the batch commands.
@REM   MAVEN_BATCH_PAUSE (Optional) set to 'on' to wait for a key stroke before ending.
@REM   MAVEN_OPTS        (Optional) Java runtime options used when Maven is executed.
@REM   MAVEN_SKIP_RC     (Optional) Flag to disable loading of mavenrc files.
@REM -----------------------------------------------------------------------------

따라서 필요한 것은 JAVA_HOME을 올바르게 설정하는 것입니다. 에 따라 (2017년 12월 29일 기준) 신규 설치 가이드 , 그냥 PATH 변수에 받는다는 bin 디렉토리 경로를 추가합니다. 트릭을해야합니다.

예 : export PATH=/opt/apache-maven-3.5.2/bin:$PATH


답변

나는 이것을 초콜릿 세트로 우연히 발견했습니다 M2_HOME. 나는 찾고 싶었다settings.xml .

의 현재 방법 settings.xml은로 이동하는 것 %USERPROFILE%입니다. 거기에 디렉토리 .m2가 포함되어 있습니다.settings.xml 있습니다.

사용하지 마십시오 M2_HOME . Apache Maven 3.5.0부터 지원되지 않습니다.

세부:

M2_HOME설치된 다른 Maven 버전과 관련된 사용 문제 와 작업을 단순화하기 위해 사용 M2_HOME이 제거되었으며 더 이상 지원되지 않습니다. MNG-5823 , MNG-5836 , MNG-5607 .

Windows 사용자를위한 중요 변경 사항 :의 사용법이 MNG-6001%HOME% 로 대체되었습니다.%USERPROFILE%

출처 : https://maven.apache.org/docs/3.5.0/release-notes.html#overview-about-the-changes


답변

$M2_HOME예를 들어 때로는 설치하는 데 사용됩니다. Takari Extensions for Apache Maven

$M2_HOME값 을 찾는 한 가지 방법 은 다음을 검색하는 것입니다 mvn.

sudo find / -name "mvn" 2>/dev/null

그리고 아마도 다음과 같을 것입니다. /opt/maven/


답변

다음과 같은 문제를 해결했습니다.

export M2_HOME=/usr/share/maven