我正在使用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文件)。

这对我很管用。

其他回答

如果您正在从cmd运行Maven命令,请确保在运行该命令之前设置了jdk路径。在我的例子中,我创建了一个包含以下内容的.bat文件:

set JAVA_HOME=C:\Program Files\Java\jdk1.8.0_60
start cmd.exe /k "cd c:\aem_proj\sis\aau"

在我的情况下,我有系统变量路径有“C:\ProgramData\Oracle\Java\javapath”位置。

在“C:\ProgramData\Oracle\Java\javapath”中定位Java, javaw只在那里。所以我得到了同样的错误。

一旦我删除了“C:\ProgramData\Oracle\Java\javapath”文件夹中的所有文件,我的错误得到了解决。

有几个选项需要指定。

步骤: 就在项目资源管理器的项目中 去运行->运行配置->单击Maven构建->单击您的构建配置/或创建一个新的配置。 您将看到窗口如下所示的快照,单击JRE选项卡。

您可以看到有3个选项:1)工作空间默认JRE 2)执行环境3)可选JRE 1)工作空间默认JRE从顶部的“窗口”菜单设置->首选项-> Java ->已安装的JRE -在这里您可以添加您的jdk 2)执行环境jdk可以设置在@ksnortum提到的pom.xml中

<build>
<plugins>
    <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.1</version>
        <configuration>
            <fork>true</fork>
            <executable>C:\Program Files\Java\jdk1.7.0_45\bin\javac.exe</executable>
        </configuration>
    </plugin>
</plugins>

3)备用JRE可用于从您的目录中选择jdk

进入“windows”->首选项-> Java ->已安装的jre

可能jre已经添加

单击“添加->标准虚拟机->下一步->目录”

并浏览JDK 在我的例子中,路径是C:\Program Files\Java\ jdk1.8.0_111

然后点击完成。

你会看到这样的窗户

select JDK -> Apply -> Ok

你完成了。

将JAVA_HOME环境变量设置为JDK根文件夹——如果您运行命令行或maven (mvn),则需要这样做。 (搜索谷歌JAVA_HOME获取更多信息) 在Java编译器部分的项目属性中选择所需的JDK -如果您直接从eclipse运行