我的问题是,当我运行mvn clean install时,会出现一个错误,说m2eclipse插件“无法定位到Java编译器:C:\Program Files\Java\jre6..\lib\tools.jar"。
首先我检查了eclipse中是否配置了正确的JRE。所以我切换到Window > Preferences > Java > Installed JREs,并检查选择的JRE是否是我jdk文件夹中的JRE。结果符合。
我检查了eclipse.ini,并添加了一个-vw标志。现在它看起来像:
-startup
plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.100.v20110502
-product
org.eclipse.epp.package.java.product
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vm
"%JAVA_HOME%\bin\javaw.exe"
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx384m
%JAVA_HOME%被解析为C:\Program Files\Java\jdk1.6.0_24。由于它包含空格,我用引号括起来了vw路径。为了检查路径是否正确,我尝试了
C:\Windows\System32>echo %JAVA_HOME%
C:\Program Files\Java\jdk1.6.0_24
这告诉我是正确的。我还尝试在启动eclipse时传递-vw选项。因此,启动eclipse的命令变为
D:\Programs\eclipse\eclipse.exe -vm "%JAVA_HOME%\bin\javaw.exe"
我也测试过使用%JAVA_HOME%符号和写完整路径的区别,但没有任何差异。
当我进入 Help > About Eclipse > Installation Details > Configuration 时,我得到的eclipse配置如下:
__wbp.gwt.useWebKit=true
awt.toolkit=sun.awt.windows.WToolkit
veclipse.application=org.eclipse.ui.ide.workbench
eclipse.buildId=M20120208-0800
eclipse.commands=-os
win32
-ws
win32
-arch
x86_64
-showsplash
-launcher
D:\Programs\eclipse\eclipse.exe
-name
Eclipse
--launcher.library
D:\Programs\eclipse\\plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.100.v20110 502\eclipse_1406.dll
-startup
D:\Programs\eclipse\\plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
--launcher.overrideVmargs
-exitdata
3e30_64
-product
org.eclipse.epp.package.java.product
-vm
C:\Program Files\Java\jdk1.6.0_24\bin\javaw.exe
eclipse.home.location=file:/D:/Programs/eclipse/
eclipse.launcher=D:\Programs\eclipse\eclipse.exe
eclipse.launcher.name=Eclipse
eclipse.p2.data.area=@config.dir/../p2/
eclipse.p2.profile=epp.package.java
eclipse.product=org.eclipse.epp.package.java.product
eclipse.startTime=1335643108722
eclipse.vm=C:\Program Files\Java\jdk1.6.0_24\bin\javaw.exe
eclipse.vmargs=-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx384m
-XX:MaxPermSize=256m
[...]
我还尝试使用位于%JAVA_HOME%\jre\bin\中的javaw.exe,但仍未更改任何内容。
有一件有点奇怪的事情是,如果我在Window> Preferences> Java> Installed JREs中删除对未包含在jdk中的jre的引用,我会收到一个错误,指出“指定的JRE安装不存在”。
有人知道我做错了什么吗?我认为我已经尝试了所有可能使其正常工作的方法,并且根据我找到的其他文章,我所做的是正确的。
顺便说一句:我进行了一些Maven“更新项目依赖项”和“更新依赖项”,这些都有效,因此我没有遇到任何错误。唯一的事情是,我没有重新启动计算机...