首页 > 代码库 > No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?

No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?

使用m2eclipse可能遇到如下错误
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project hello-world: Compilation failure[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?[ERROR] -> [Help 1][ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.[ERROR] Re-run Maven using the -X switch to enable full debug logging.[ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles:[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException

这是因为Eclipse默认是运行在JRE上的,而m2eclipse的一些功能要求使用JDK。解决方法是配置Eclipse安装目录的eclipse.ini文件,在-vmargs 参数的前面,添加vm配置指向JDK。例如:

--launcher.appendVmargs-vmC:\Program Files\Java\jdk1.7.0_21\bin\javaw.exe-vmargs-Dosgi.requiredJavaVersion=1.6-Xms40m-Xmx512m

No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?