
出现的问题如上JAVA_HOME 环境变量配置不正确且提示它应该指向 JDK 而非 JRE。原因1.系统中存在多个 Java 版本执行 where java 命令会返回多条路径通常是因为系统安装了多个 JDK/JRE 版本或系统目录如 C:\Windows\System32下存在旧版 java.exe它会优先被调用导致 Maven 误识别。2.用户变量与系统变量冲突环境变量中同时存在用户变量和系统变量的 JAVA_HOME或两者指向不同路径导致 Maven 读取到了错误的配置。解决方案步骤 1定位系统中所有的 Java 可执行文件打开 cmd 窗口执行命令where java正常只会返回一条路径如果返回了多条比如 C:\Windows\System32\java.exe 和 JDK 目录下的 java.exe说明存在冲突。步骤 2移除系统目录下的干扰文件进入 C:\Windows\System32 目录找到 java.exe、javaw.exe、javaws.exe 这三个文件建议直接删除或为它们添加后缀如改为 java.exe.bak避免系统优先调用旧版本 Java。步骤 3清理冲突的 JAVA_HOME 环境变量右键「此电脑」→「属性」→「高级系统设置」→「环境变量」先查看用户变量和系统变量中是否都有 JAVA_HOME如果两者都存在优先删除用户变量中的 JAVA_HOME仅保留系统变量中的配置确保系统变量中的 JAVA_HOME 指向真实的 JDK 根目录例如 C:\Program Files\Java\jdk1.8.0_301不是 bin 目录也不是 JRE 目录。编辑 Path 变量确保其中包含 %JAVA_HOME%\bin且路径没有重复或错误。步骤 4验证配置是否生效关闭当前 cmd 窗口重新打开一个新的 cmd环境变量修改后必须重启终端依次执行以下命令验证java -version # 查看 Java 版本应显示你配置的 JDK 版本javac -version # 验证 JDK 编译工具是否可用mvn -v # 验证 Maven 是否能正常识别 JAVA_HOME如果 Maven 能正常输出版本信息说明问题已解决。