我正在使用m2eclipse在Eclipse中编译一个项目。我在Eclipse中设置JDK路径,如下所示:

Windows-->preferences-->installed jres--> jdk1.7.xx  path

但是这显示了一个错误

[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.424s
[INFO] Finished at: Tue Oct 29 15:21:01 IST 2013
[INFO] Final Memory: 5M/15M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-   plugin:3.1:compile (default-compile) on project TEST-WEB: Compilation failure
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?

当前回答

如果jaipster的答案不起作用,另一个选择是: 窗口>首选项> Java >已安装的jre

然后编辑jre,使其指向jdk而不是jre (jre包编辑器中的jre home文件)。

这对我很管用。

其他回答

对我来说,这正是日食专家所抱怨的

所以,我按下编辑按钮,并更改路径到JDK文件夹,然后清洁项目,一切开始工作

除了上面的回答之外,我可以说,只需尝试从终端(Eclipse之外)运行Maven。通过这种方式,如果它是从外部构建而不是在Eclipse中构建,那么您就可以理解问题应该在Eclipse中。

在我的案例中,问题是这样解决的:

转到“运行时配置”,将JRE配置为JDK。

我复制了答案,以防它因为某种原因被删除,但来源在这里

我有同样的问题,我只是添加JAVA_HOME环境变量。

如果您正在使用eclipse,请参考https://stackoverflow.com/a/21279068/6097074 如果您使用的是intellij,只需在添加JAVA_HOME后从项目目录打开命令提示符并运行mvn clean install(不要使用intellij终端)。

如果jaipster的答案不起作用,另一个选择是: 窗口>首选项> Java >已安装的jre

然后编辑jre,使其指向jdk而不是jre (jre包编辑器中的jre home文件)。

这对我很管用。