我正在使用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?

当前回答

这是因为它正在寻找JDK并正在创建JRE。

建议解决方案: 窗口>首选项> Java >已安装jre >编辑>单击目录>浏览JDK的路径....

这应该没问题。这对我来说很有效!!

其他回答

添加新的JRE定义(选择路径JDK),为我工作。

http://help.eclipse.org/neon/index.jsp?topic=%2Forg.eclipse.jdt.doc.user%2Ftasks%2Ftask-add_new_jre.htm

在Linux中,做一个docker的例子,我一定没有安装JDK,只安装了JRE。sudo apt安装openjdk-8-jdk,在配置文件中设置JAVA_HOME,并将JAVA_HOME/bin添加到路径中,它就构建了!

问题声明=此环境中不提供编译器。也许您正在运行JRE而不是JDK?intellij

解决方案

请像下面这样设置环境变量来解决问题

变量名:JAVA_HOME

变量值:C:\Program Files\Java\ jdk1.8.0_202

变量名:M2_HOME

变量值:C:\Program Files\ apache-maven-3.6.0

此外,在“系统变量”中添加Java和maven路径,如下所示:

C:\Program Files\Java\ jdk1.8.0_202 \ bin C:\Program Files\ apache-maven-3.6.0 \ bin

这是因为它正在寻找JDK并正在创建JRE。

建议解决方案: 窗口>首选项> Java >已安装jre >编辑>单击目录>浏览JDK的路径....

这应该没问题。这对我来说很有效!!

在Eclipse IDE中,进入Window > Preferences > Java > Installed JREs >并检查已安装的JREs。这里应该有一个带有JDK的条目。 选择执行环境,如下所示。单击OK 然后右键单击项目-> Maven ->更新项目

此外,您可能必须更改Maven JRE(参见@jlars62 answer),如下所示。运行配置,选择Maven构建我正在运行(从左侧面板)。然后,单击JRE选项卡并选择Workspace default JRE选项