Windows 7上的32位64位Maven 2.2.1 64位
出于各种原因,我必须坚持使用Java(6)和Maven(2.2)的旧版本。考虑到这一点,我安装了Maven 2.2.1,而我的系统使用的是64位JDK 6
我试图通过运行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期望Java的32位版本,而它无法处理64位Java。这是真的吗
如果确实是这种情况,将%JAVA_HOME%
环境变量设置为指向32位版本(已安装)是而不是我想做的事情,因为它会使我的电脑上安装的其他工具失败,这些工具依赖它指向64位版本
有办法吗
更新:通过在maven.bat
中插入以下行(就在=== START VALIDATION ===
之前)解决问题:
set JAVA_HOME=C:\Program Files (x86)\Java\jdk1.6.0_37
通过这种方式,这种%JAVA_HOME%
环境变化被本地化为Maven,在外部是不可见的
如果有更好的解决办法,我很乐意知道
# 1 楼答案
问题的根源一直在我眼前,但我没有看到:
%JAVA_HOME%env变量被设置为
%SystemRoot%\Program Files (x86)\Java\jdk1.6.0_37
,而不是%SystemDrive%\Program Files (x86)\Java\jdk1.6.0_37
一旦修复,就不需要修改
maven.bat