【问题标题】:Maven (commandline): No compiler is provided in this environmentMaven(命令行):此环境中未提供编译器
【发布时间】:2014-05-08 09:55:51
【问题描述】:
Failed to execute goal or.apache.maven.plugins:maven-compiler-plugin:3.1:comple <default-compile> on project google-play-services: Compilation failure

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

这是在 Windows 的命令行中使用 Android SDK Deployer 时的结果。我将JAVA_HOME C:\Program Files (x86)\Java\jdk1.7.0_45 添加到我的系统变量中。

我是否配置了错误的部分?

【问题讨论】:

    标签: java windows command-line environment-variables


    【解决方案1】:

    如果您安装新版本的 JAVA (JRE),也会发生此错误,因为 Java 安装程序会更改 Windows 上环境变量的顺序。

    因此,请验证 系统变量 中的 PATH 值。如果您看到:

    C:\Program Files (x86)\Common Files\Oracle\Java\javapath
    

    或者:

    C:\ProgramData\Oracle\Java\javapath
    

    在列表顶部,编辑PATH 并将先前路径的顺序更改为低于 为JDK 路径变量(例如C:\Program Files\Java\jdk1.8.0_162\bin)。

    【讨论】:

      【解决方案2】:

      通常会发生这种情况,无法从 JRE(运行时环境)编译源代码以运行编译后的代码。

      所以首先要做的是验证环境变量中定义的 JAVA_HOME 路径。

      它应该被定向到 JDK。 例如:

      C:\Program Files (x86)\Java\jdk1.8.0_111

      【讨论】:

      • JAVA_HOME 对我来说是个问题。即使你把 jdk 的 bin 文件夹放在 PATH 变量中,mvn 仍然使用 JAVA_HOME。
      • 优秀。 JAVA_HOME 必须是在命令行上使用特定版本的 maven 编译项目的要求。
      【解决方案3】:

      这个问题很容易解决。我只需要在更改系统变量后重新启动命令行。

      【讨论】:

      • 我该怎么做?
      • @TuGordoBello 关闭命令行窗口并启动另一个命令行。
      【解决方案4】:

      在 Windows 操作系统上设置JAVA_HOME 时使用Progra~1 而不是Program files,因为它之间有空格,例如C:\Progra~1\Java\jdk1.8.0_251

      Progra~1 = '程序文件' 程序~2 = '程序文件(x86)'

      【讨论】:

        【解决方案5】:

        我在 vscode 中运行我的 spring boot 项目,我偶然发现了同样的问题。 将此添加到我的 pom 解决了它

        <plugin>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.1</version>
                    <configuration>
                        <fork>true</fork>
                        <executable>C:\Program Files\Java\jdk-13.0.2\bin\javac.exe</executable>
                    </configuration>
                </plugin>
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2019-08-16
          • 2014-02-01
          • 2021-11-26
          • 2015-09-21
          • 2015-11-03
          • 1970-01-01
          • 2018-08-25
          相关资源
          最近更新 更多