Maven 在 Eclipse 的构建路径中添加了 JRE 而不是 JDK

Posted

技术标签:

【中文标题】Maven 在 Eclipse 的构建路径中添加了 JRE 而不是 JDK【英文标题】:Maven adds JRE instead of JDK to build-path in Eclipse 【发布时间】:2014-07-21 10:01:48 【问题描述】:

我在 pom 中设置为像这样使用 java 1.8:

<properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> </properties>

然后我做了一个“maven 更新项目”,Eclipse/maven 将 1.8 JRE 添加到构建路径而不是 JDK。因此我获得了对 java fx 类的限制访问权限。

我的环境设置应该没问题:

>echo %JAVA_HOME%
C:\Program Files\Java\jdk1.8.0_05

>java -version
java version "1.8.0_05"
Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.5-b02, mixed mode)

>mvn -version
Apache Maven 3.2.1 (ea8b2b07643dbb1b84b6d16e1f08391b666bc1e9; 2014-0
2+01:00)
Maven home: C:\Program Files\apache-maven-3.2.1
Java version: 1.8.0_05, vendor: Oracle Corporation
Java home: C:\Program Files\Java\jdk1.8.0_05\jre
Default locale: en_US, platform encoding: Cp1250
OS name: "windows 7", version: "6.1", arch: "amd64", family: "dos"

任何想法我应该怎么做才能解决它?

我可以在 Eclipse 中手动更改项目的构建路径,但 maven refresh 会一直覆盖它。

【问题讨论】:

检查 Eclipse 的默认编译器。 Maven 可能正在使用该编译器的 1.8 级别。 【参考方案1】:

您的命令行环境在 Eclipse 中几乎无关紧要。

m2e eclipse 插件将尝试从其中的 Java 环境中选择一个

Preferences/Java/Installed JREs

如果那里没有列出 JDK,那么 Eclipse 将无法使用它。

【讨论】:

JDK 在那里设置并设置为默认值。删除了jre,所以它不能拿起它。现在它将 jdk jar 添加到构建路径,但仍然出现限制错误。如果我将 jdk 手动添加到构建路径中,则 jar 上没有定义访问限制。如果 eclipse 添加,那么它在同一个 jars 上。 另见Using JavaFX in JRE 8【参考方案2】:

找到关于我的问题的正确信息和解决方案:

https://bugs.eclipse.org/bugs/show_bug.cgi?id=431067

【讨论】:

以上是关于Maven 在 Eclipse 的构建路径中添加了 JRE 而不是 JDK的主要内容,如果未能解决你的问题,请参考以下文章

在 Eclipse 中设置 EJB 构建类路径

如何配置 Eclipse 构建路径以使用 Maven 依赖项?

为啥eclipse添加maven路径的时候出现maven目录无效

使用eclipse构建springboot项目

如何在eclipse中配置构建路径条目

eclipse中maven构建sprngmvc项目