今天在尝试springboot打包mvn clean package -DskipTests的时候报了错误No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
这个错误出现很多次了,我搜了很多网上资料,总结一下解决方法:
异常信息:
[ERROR] COMPILATION ERROR : [INFO] ------------------------------------------------------------- [ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK? [INFO] 1 error [INFO] ------------------------------------------------------------- [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 1.436 s [INFO] Finished at: 2017-06-28T11:16:07+08:00 [INFO] Final Memory: 10M/151M [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project manage: Compilation failure [ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK? [ERROR] -> [Help 1]
打开cmd,输入mvn -v的命令,查看maven的java home
首先,配置一个JAVA_HOME,这个配置如下:
需要保证JAVA_HOME与maven的java home相同,必须要选择Java开发环境jdk中的jre,而不是jre中的jre。
这需要更新注册表中的信息,注册表路径为:HKEY_LOCAL_MACHINE/SOFTWARE/JavaSoft/Java Runtime Environment/1.8
更新JavaHome路径和RuntimeLib路径
JavaHome路径如下:为JDK中Jre路径
RuntimeLib路径如下:为jvm.dll路径
保持jdk路径与maven的jdk路径相同后,就不会出现如上错误了。