2016-08-03 31 views
0

Maven M2_HOME環境変数に問題があります。コンソールのM2_HOMEが上書きされない

M2_HOME is set to an invalid directory. 
Please set the M2_HOME variable in your environment to match the 
location of the Maven installation 

はここに私の設定です:

毎回私はそれを言うのコンソール内の変数を上書きします。

私は、バージョン3.3.9用とバージョン3.2.5用の2つのインストールがあります。 しばらくしてバージョン3.2.5が必要です。

私は2つの追加環境変数M2_HOME_3_3_9とM2_HOME_3_2_5を作成しました。もちろん、%M2_HOME%\binのようなPATHの一部であるM2_HOME変数も作成しました。

デフォルトでは、M2_HOMEは%M2_HOME_3_3_9%に設定されています。

私は3.2.5は、私はコンソールを開き、次のコマンド送信Mavenの必要がある場合:上記の私にエラーを与えているのmaven後

SET M2_HOME=%M2_HOME_3_2_5% 

を。

環境設定でM2_HOMEを%M2_HOME_3_2_5%に変更してコンソールを起動しても問題ありません。

については、 $ M2_HOME/confには

+0

コンソールで 'set M2_HOME'を実行すると、出力は何ですか? – JimHawkins

+0

変更する前に M2_HOME = 3.3.3に移行する M2_HOME_3_2_5 =パスを3.2.5に変更 M2_HOME_3_3_9 =パスを3.3.9に変更 これは機能します。 SET M2_HOME後= 3.2.5 M2_HOME_3_2_5 TO PATH = 3.2.5 M2_HOME_3_3_9 TO PATH = 3.3.9 – Maxx

答えて

1

をあなたはM2_HOMEを変更した後もPATH環境変数を変更しましたか?

つまり、PATH環境変数の内容は何ですか?

実行可能なmavenファイルが%M2_HOME_3_2_5%/binにあり、M2_HOME%M2_HOME_3_3_9%を指している場合は、問題が発生すると思います。

+0

こんにちは、ありがとうございます。 '%M2_HOME%\ bin'のようにPATHにM2_HOME変数を追加しました。したがって、M2_HOMEが変更されると、PATHも変更されます。私はこの部分を私の質問に加えました。これはJAVA_HOMEでも同様に動作します。 – Maxx

+0

それは変だ。私はあなたの質問をチェックしました。 私のパスは上記のように設定されていますが、 'M2_HOME'変数を変更すると' PATH'は変更されません。そして、 'M2_HOME'は3.2.5を指していますが、' PATH'は3.3.9を指しています。 これは 'JAVA_HOME'と同じです。私の間違いは、 'java -version'ではなく' mvn -version'を通して 'JAVA_HOME' の変更を確認したことです。 – Maxx

+0

@Maxx JAVA_HOMEの仕組みを理解できません...複数のJavaバージョンがインストールされていて、使用しているものを変更したいのですか? – JimHawkins

-1
export %M2_HOME_3_2_5%=$HOME_3_2_5/builds/maven 
export M2_HOME=%M2_HOME_3_2_5% 
export M2_REPO=$M2_HOME/repository 

このコンテンツとsettings.xmlファイルを作成:

<settings> 
<localRepository>${env.M2_HOME}/repository</localRepository> 
</settings> 
+1

TO PATHなぜMavenのインストールフォルダ内のMavenのリポジトリを見つけることをお勧めしますか?それは間違っている。同じローカルリポジトリをすべてのMavenバージョン> 2 – JimHawkins

+0

に使用することができ、M2_HOME内の 'settings.xml'を変更するのは間違いです – JimHawkins

0

PATHで使用したいMavenディストリビューションのbinフォルダを追加(設定)するだけです。 M2_HOMEなどを使用する必要はありません。

さらに、リポジトリはデフォルトで$HOME/.m2/repositoryになっています。変更する必要はありません.Mavenインストールには絶対に変更しないでください。こんなことしないで。あなたが変更する必要があるsettings.xmlは、$HOME/.m2/settings.xmlにある自分のファイルだけです。あなたは、配布物内のファイルを変更することを避けるべきです....

+0

こんにちは、お返事ありがとうございます。 '%M2_HOME%\ bin'のように私のPATHにM2_HOME変数を追加しました。もし私がM2_HOMEを変更すると、PATHが変更されます。 JAVA_HOMEが動作します。私は自分の質問を編集し、その部分をPATHに追加しました。 – Maxx

+0

Java Home for Mavenの場合は、 '$ HOME/.mavenrc'やWindowsの' $ HOME/mavenrc_pre.bat'や '$ HOME/mavenrc_pre.cmd'のJAVA_HOMEを設定する方が良いでしょう。さらに、 'M2_HOME'を使うべきではありません。 – khmarbaise

関連する問題