报错简略#
No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
报错排查#
终端执行
mvn -v
重点看输出里的 Java version 与 runtime,有没有和项目所用的 Java 版本对应上
如果没对应上,说明就是环境变量的问题,可以继续往下看
检查环境变量#
终端执行
java -version
javac -version
上面 mvn -v 是跟着系统级的 Java 环境变量走的,所以这两条终端命令会和项目不对应
更新环境变量#
我是 win 踩的坑,下面介绍 win 系统解决方式
windows:控制面板 -> 系统和安全 -> 系统 -> 高级系统设置 -> 环境变量
这里会看到用户变量和系统变量,我是两个都改了
选中用户变量中的 Path-> 编辑 -> 新建 -> 把对应 jdk 的 bin 路径粘贴进来 -> 移到最上面
系统变量和用户变量的操作一致
解决问题最重要的是将jdk 的 bin 路径移至最上面,问就是别的环境变量中也有 java,它把 java_home 接管了,所以移到最上面就解决了