web-dev-qa-db-ja.com

無効なディレクトリに設定されたMaven M2_HOME(Windows 7)

MavenをWindows 7にインストールしようとしましたが、結果は良くありません。基本的な情報:

Mavenインストールディレクトリ:C:\Program Files\Apache Software Foundation\Apache-maven-3.0.4システム変数 "M2_HOME":C:\Program Files\Apache Software Foundation\Apache-maven-3.0.4\システム変数 "Path":%M2_HOME%Apache-maven\src\bin;%Java_HOME%\bin

コマンドパスでmvn --versionを実行すると、エラーメッセージが表示されます。

ご使用の環境でM2_HOME変数を設定して、Mavenインストールの場所と一致させてください

そのため、現時点では、mvnのサブディレクトリは%M2_HOME%\binの指示に従って設定されていません。 %M2_HOME%Apache-maven\src\binをそれで置き換えると、次のようになります。

mvnは、内部または外部コマンド、操作可能なプログラム、またはバッチファイルとして認識されません

Mavenインストールディレクトリ(またはZipファイル)には、\binに直接Apache-maven-3.0.4フォルダーがありません。

私は完全にMavenの初心者です。皆さんが助けてくれることを願っています。

ちなみに、Javaコマンドはどのディレクトリからでも動作するので、ここで問題になるとは思いませんが、確信はありません。

16
MikkoP

ダウンロードしたパッケージApache-maven-3.3.9にbinフォルダーが含まれていない場合、ダウンロードは間違っています。 以下を含むZipファイルをダウンロードする bin、boot、conf、libフォルダーである必要があります。そうでない場合、何か問題が発生しています。ダウンロードしたファイルのサイズは約4.8 MBです。 md5またはSHA1チェックサムを介してファイルを確認できます。

18
khmarbaise

M2_HOME-C:\Apache-maven-3.0.4を設定します。つまり、binなしのパスです。 PATHで-%M2_HOME%\binを設定します。つまり、binをパスに設定します。

37
Achraj

3.3.1では、*。batファイルは消え、*。cmdファイルのみが残りました。 .CMDは.BATと同じであり、一部のソフトウェアはそれらを想定しています。 Netbeansで実行するために、.CMDsを.BATsに名前変更しました。 「Maven M2_HOMEが無効なディレクトリに設定されました」。 .BATを.CMDにコピーする(つまり、両方がフォルダーにあった)ことで問題が解決しました。

18
TomS

私の場合、セットアップは正しかった:

Windowsシステム変数:

  • M2 C:\ dev\software\Apache-maven-3.3.9\bin
  • M2_HOME C:\ dev\software\Apache-maven-3.3.9

Windowsユーザー変数:

  • %M2_HOME%\ bin

しかし、すべての参照が私の場合は3.3.9である最新バージョンを指していても、two mavenのインストールがあった場合、私は同じ問題を抱えていました。 より古いバージョンを削除した後、同じコマンドがmavenを認識しました。

前:

maven -v
ERROR: M2_HOME is set to an invalid directory.
M2_HOME = "C:\dev\software\Apache-maven-3.3.9"
Please set the M2_HOME variable in your environment to match the
location of the Maven installation

後:

maven -v
Apache Maven 3.3.9
Maven home: C:\dev\software\Apache-maven-3.3.9
Java version: 1.7.0_51, vendor: Oracle Corporation
Java home: C:\Program Files\Java\jdk1.7.0_51\jre
11
Ithar

「Binary Zip」という名前のMavenファイルをダウンロードする必要があります。例: http://mirrors.digipower.vn/Apache/maven/maven-3/3.1.1/binaries/Apache-maven-3.1.1-bin.Zip

5
Tai Nguyen

私は自分のコンピューターで同じ問題を抱えており、それを解決しました:

  • MavenディレクトリとMaven環境変数を削除しました
  • https://maven.Apache.org/download.cgi にバイナリZipアーカイブをダウンロードしました
  • C:\mavenで解凍しました
  • 新しい環境変数を追加しました:C:\mavenM2_HOME%M2_HOME%\libM2PATH%M2%を追加しました

そしてそれは動作します!

2
romainb78

環境変数M2_HOMEを取り除きます。 Maven 3では使用されず、実際、混乱させます。パスで使用していた場合、maven binへのパスを明示的に定義するか、M3_HOMEなどの別のものに変更します。

1
rhinmass

私にとって、PATH変数には古いバージョンのmavenがありました。それで更新しました。 %M2_HOME%を使用する必要がありますが、パスを詳しく説明していました。

1
user6078975

ちょうど今、私は同じ問題に直面しました。私の場合、問題はPATH%M2_HOME%\binを含むように適切に設定されていなかったことです。適切に設定されると、問題は解決しました。

このような問題に直面した場合は、コマンドラインでPATHの値を印刷して、値が適切に選択されるようにしてください。

1
sonikan

ビンの場所全体を「PATH」環境変数に追加します例:C:\ Program Files\Apache Software Foundation\Apache-maven-3.0.4\bin

M2_HOME、M2。は必要ありません

Microsoft Windows [バージョン10.0.14393](c)2016 Microsoft Corporation。全著作権所有。

C:\ Users\XXXX> mvn -version Apache Maven 3.3.9(bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-10T22:11:47 + 05:30)Mavenホーム:C:\ Program Files\Apache Software Foundation\Apache-maven-3.3 .9\bin .. Javaバージョン:1.8.0_91、ベンダー:Oracle Corporation Java home:C:\ Program Files\Java\jdk1.8.0_91\jreデフォルトロケール:en_US、プラットフォームエンコーディング:Cp1252 OS名: "windows 10"、バージョン: "10.0"、Arch: "AMD64"、family: "dos"

アカウントの環境変数に「M2_HOME」と「PATH」を設定し、システム環境変数から「PATH」を削除します。

0

次のステップの後のすべての成功。

  1. http://maven.Apache.org/download.cgi ダウンロードが必要な4つの亜種のページbinaryファイル。

  2. 環境変数を設定します(@JamesBからのヒント- https://stackoverflow.com/a/13093358/394134 ):

Java_HOME = C:\ Program Files\Java\jdk1.6.0_35

MAVEN_HOME = D:\ software\Apache-maven-3.0.4

PATH =%PATH%;%MAVEN_HOME%\ bin;%Java_HOME%\ bin

  1. 実行mvn -version
0
Kosmos

異なるMavenロケーションのシステム変数M2_HOMEおよびPATHを確認します。

0
Ishara Samantha

検索パスに表示された別のディレクトリに古いバージョンのMVNがありました。古いバージョンを削除し、すべてが機能しました。 Windowsファイル検索を使用して、「mvn」のすべてのインスタンスのドライブをスキャンし、古いバージョンを見つけました。

0
mark

クイックアンサー
。 Windowsユーザーにとってのもう1つの重要な変更:%HOME%の使用は%USERPROFILE%に置き換えられました

より詳細な回答
あなたが観察したのは、常にMavenの問題でした。同じディレクトリに2つの異なるバージョンをインストールすると、古いバージョンが検出されますが、新しいバージョンは検出されません。
Maven 3.3.9のリリース後、Eclipse Aetherプロジェクトは廃止され、コードベースはApache Mavenプロジェクトに移行されました。 3.4.0リリースの当初の目標は、Apache Mavenプロジェクトへの移行後にAetherをまったく同じコードに置き換え、リゾルバーコードとMavenの他の領域のバグ修正を進めることでした。これは意図したとおりに行われることはなく、3.4.xリリースラインを永久に焼くという決定が下されました。 3.5への切り替えにより、これらの変更がもたらされました

0
mainas

並列の場所に別のバージョンのMavenインストールがある可能性があります。そのような場合、不要なものを削除し、M2_HOMEに対して適切なパスをリセットします。

0