1.问题背景
最近换成了Mac系统,安装好了mvn和jdk环境后,使用mvn clean install命令的时候报错了:
No compiler is provided in this environment. Perhaps you are running on a JRE。
但是我本地的环境都是OK的,环境变量也设置好了的
java --version # 可以正常显示
mvn --version # 可以正常显示
但是mvn还是报下下面这个错误
2.问题排查
# 查看 runtime 环境
mvn -version runtime
结果如下:
查询一下java的环境变量信息
# 查看JAVA_HOME,或者echo $JAVA_HOME
/usr/libexec/java_home -V
显示的结果是:
看到有两个java的环境,说明mvn执行环境没有使用到正确的java环境
3. 解决方案
打开终端,输入cd ~ 进入到根目录,执行ls -al看到有下面的文件
vim .bashrc编辑该文件,把java的环境变量配置好,
输入:
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-1.8.jdk/Contents/Home
export PATH=$JAVA_HOME/bin:$PATH
然后执行source .bashrc就可以了
重新执行 mvn -version runtime看到jdk环境是正确的
然后就可以运行mvn clean install了