4

さまざまな理由から、古いバージョンのJava(6)とMaven(2.2)を使い続ける必要があります。そのため、システムで64ビットのJDK 6を使用しているときに、Maven2.2.1をインストールしました。

実行して正しくインストールされていることを確認しようとしmvn --versionましたが、応答として受け取ったのは次のとおりです。

ERROR: JAVA_HOME is set to an invalid directory.
JAVA_HOME = "C:\Windows:\Program Files\Java\jdk1.6.0_37"
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation

Mavenは32ビットバージョンのJavaを想定しており、64ビットJavaを処理できないのではないかと疑っています。これは本当ですか?

実際にそうであれば%JAVA_HOME%、32ビットバージョン(すでにインストールされている)を指すように環境変数を設定することは、64を指すことを期待するPCにインストールされている他のツールに失敗するため、私がやりたいことではありません。ビットバージョン。

これを回避する方法はありますか?

更新:maven.bat次の行(直前)に挿入することで問題が解決しました=== START VALIDATION ===

set JAVA_HOME=C:\Program Files (x86)\Java\jdk1.6.0_37

このように、この%JAVA_HOME%環境の変化はMavenにローカライズされ、外部には表示されません。

より良い解決策があれば、私はそれについて知ってうれしいです。

4

1 に答える 1

3

問題の原因はずっと私の目の前にありましたが、私はそれを見ませんでした:

%JAVA_HOME%envvarが。%SystemRoot%\Program Files (x86)\Java\jdk1.6.0_37の代わりに設定されました%SystemDrive%\Program Files (x86)\Java\jdk1.6.0_37

修正すると、変更maven.batは必要ありません。

于 2012-12-04T17:03:53.567 に答える