18

运行 Maven 时,我得到以下输出:

[WARNING] Unable to autodetect 'javac' path, using 'javac' from the environment.

我该如何解决?

4

8 回答 8

24

当使用 JRE(Java 运行时环境)运行 Maven 时,您将看到此错误消息,该 JRE 是 Java 的精简版本,只能执行Java 代码但不能编译源代码。

要修复警告,请安装JDK(Java开发工具包)并将环境变量设置JAVA_HOME为新安装的 Java 版本。

如果需要,您可以将其放入文件中.mavenrc;那么只有 Maven 会使用这个版本的 Java。

于 2013-11-08T14:34:59.127 回答
8

如果您从 Eclipse 运行 Maven(例如 Run As : Maven Install),请确保您的环境配置了正确的 JRE(您需要 JDK,而不是 JRE)。转到窗口 -> 首选项 -> Java -> 已安装的 JRE。如果有 JDK,请选择 JDK,如果没有,请添加 JDK。

于 2014-06-09T19:44:12.827 回答
6

我的一个朋友在Ubuntu 18.04中构建Java项目时遇到了这个问题。

当他运行命令时:

maven clean build

他得到警告:

[WARNING] Unable to autodetect 'javac' path, using 'javac' from the environment

然后得到这个错误:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.5.1:compile (default-compile) on project geostore-model: Compilation failure -> [Help 1]

以下是它的解决方法

问题是他的机器上没有安装javac(Java 编程语言编译器)。为了确认,我们运行了命令:

javac --version

我们没有版本输出

因此,我们使用以下命令安装了包含所有依赖项的Java 开发工具包:javac

sudo apt install default-jdk

之后我们运行命令javac --version并得到输出:

javac 11.0.9.1

就这样。

我希望这有帮助

于 2020-11-14T12:03:54.040 回答
1

尝试JAVA_HOME 在 MyComputer-->Environment Variable中设置

于 2013-11-08T14:41:04.973 回答
1

sudo yum install java-1.8.0-openjdk-devel 对于 Java 版本 8 sudo yum install java-11-openjdk-devel对于 Java 版本 11

于 2021-02-03T08:31:43.163 回答
1

sudo yum install java-sdk Centos 使用 -devel 后缀找到正确的 SDK

于 2021-02-03T08:12:22.193 回答
0

Right click on project -> Properties -> Java Compiler然后uncheck 使用执行环境中的合规性...然后在编译器合规性级别中选择一个编译器

于 2018-01-05T05:48:01.317 回答
0

在 Mac 上:

java_version=1.8
#version=1.8.0_91
export JAVA_HOME=$(/usr/libexec/java_home -v $java_version) 
于 2021-03-20T10:33:40.183 回答