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

当前回答

我只是浪费了3个小时在这个问题上,直到我设法使它工作。 当我在Eclipse终端中发出mvn编译命令时,我有这个错误:

此环境中不提供编译器。也许您正在运行JRE而不是JDK?

因此,我在这里读到,我必须创建一个名为JAVA_HOME的新系统变量,并使其指向jdk安装文件夹。然而,这产生了另一个错误:

不再支持源选项1.5。使用1.6或更高版本

找不到解决办法,所以…

因此,解决这些问题的方法是安装Java SE开发工具包8! 我用的是9,我想如果是最新的,肯定更好…

无论如何……

卸载计算机上的所有java版本 从这里安装JDK8: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 然后在这里定义JAVA_HOME系统的环境值教程: https://docs.oracle.com/cd/E19509-01/820-3208/inst_cli_jdk_javahome_t/ 重新启动Eclipse,享受吧!(至少我是这么做的)

希望这能让那些可怜的流浪者少受些麻烦。

其他回答

我在尝试使用mvn clean install为我的项目应用程序构建jar文件时遇到了同样的问题,尽管应用程序在从Eclipse运行时工作得很好。

我没有设置JAVA_HOME环境变量,这确实太天真了。我所要做的就是将JAVA_HOME环境变量设置为JDK目录,确保它不是“\bin”,并且没有分号“;”。

我是这样理解的:

应用程序在Eclipse中运行良好,因为JRE系统库引用的是JDK文件夹中的JRE,而不是没有JDK的外部JRE文件夹。[在其他答案中解释得很好]

此配置不适用于我们在命令提示符上运行的maven命令。它仍然会寻找JAVA_HOME变量来访问JRE系统库,当没有找到它时,它会引用没有JDK的外部JRE文件夹。

对我来说,我已经升级到大苏尔Mac操作系统,我必须删除这个,然后它就可以正常工作了。

sudo rm -fr /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin

在构建项目时,请确保将jre指向jdk路径。这可以在特定项目的Run配置部分中完成。

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

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

虽然这个问题是关于Eclipse设置的错误,但我认为用IntelliJ和Windows 10设置修复这个错误的答案可能也有帮助。

1. 进入文件—>设置—>构建,执行,部署—>构建工具—> Maven—>导入

2. 如下所示,将JDK for Importer设置为JAVA_HOME

此外,JAVA_HOME应该设置为“JDK path at Environment Variables——> System Variables”,并在path System变量中添加%JAVA_HOME%\bin