在 Eclipse 中导入 Maven 项目发生错误,原因是找不到 tools.jar

Import Maven projects in Eclipse has error occurred that caused by couldn't find tools.jar

当我尝试在 Eclipse Oxygen 中使用 maven-checkstyle-plugin 导入 "Existing Maven Projects" 时,出现如下屏幕截图所示的错误。看起来 Eclipse 使用默认的 JRE 路径,而不是我在 Eclipse 中的环境变量和 "JRE Installed" 配置中设置的 JDK 路径。

在 "Error" Eclipse 视图中发现异常的完整堆栈跟踪:

我的环境变量设置:

"Path"变量的用户等级设置:

"Path" 变量的系统级设置:

Eclipse 中已安装的 JRE 设置:

我尝试导入的项目是从 github 克隆的,存储库 url 是 https://github.com/scribejava/scribejava

我在网上找了两天的答案.. 在官方网站上我发现了这个:https://maven.apache.org/plugins/maven-eclipse-plugin/trouble-shooting/jdk-being-used-is-different-than-expected.html ,但它也没有解决我的问题。

导入完成后,我在父项目上安装了运行 maven,所有阶段都没有错误。该错误仅在第一次导入过程中发生。当我在 pom.xml 中删除 checkstyle 插件后在新工作区再次导入项目时,它也很顺利,没有任何错误。

所以我猜我的开发环境设置可能有问题。这个错误不影响手动运行ning maven "install" 项目后的任何进一步操作,但我真的很想知道为什么会这样,如果我能摆脱它,那将是最好的。谢谢!

我已经解决了问题。我再次检查了所有的配置,然后我发现在System Level的Path变量中有一个设置条目"C:\ProgramData\Oracle\Java\javapath",这可能是问题的原因。因为我以前从未设置过。我认为它可能是由 JRE 安装过程自动添加的。我在 cmd 控制台中 运行 "where java","C:\ProgramData\Oracle\Java\javapath" 和 "C:\Java\jdk8\bin" 都显示在结果列表中,"C:\ProgramData\Oracle\Java\javapath" 条目位于列表顶部。最后,在我从路径变量中删除 "C:\ProgramData\Oracle\Java\javapath" 之后,所有问题都消失了。