警告-构建路径指定执行环境J2SE-1.4


140

我在Eclipse Helios中创建一个Maven项目。它一天可以正常工作,但是随后出现此警告:

构建路径指定执行环境J2SE-1.4。工作区中没有安装与该环境严格兼容的JRE。

从出现此消息以来,项目停止了编译和调试。有人对此问题有解决方案吗?

Answers:


226

在项目中的Eclipse中:

  1. 右键点击您的项目
  2. 单击属性
  3. Java构建路径:库;删除“ JRE系统库[J2SE 1.4]”
  4. 单击添加库 -> JRE系统库
  5. 选择新的“执行环境”或工作区默认的JRE

43
这个答案对Eclipse是正确的,但对于Maven + Eclipse是错误的
Chris Dolan

17
这将暂时解决问题,直到运行另一个Maven构建,此时JRE版本将重置为默认版本。请参阅Pascal Thivent的答案以更改POM中指定的JRE的默认版本。
matthewb 2012年

都无法正常工作。每当您执行[Alt] [F5]更新Maven配置时,所有这些手动调整都会变得很多,并且警告会再次出现。见bugs.eclipse.org/bugs/show_bug.cgi?id=376619
约尔格

181

不管您使用的是maven eclipse插件还是m2eclipse,Eclipse的项目配置都是从POM派生的,因此您需要将maven编译器插件配置为1.6(默认为1.4)。

将以下内容添加到项目的pom.xml保存中,然后转到Eclipse项目并选择Properties> Maven> Update Project Configuration:

<project>
 <build>
  <pluginManagement>
   <plugins>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>          
        <configuration>
            <source>1.6</source>
            <target>1.6</target>
        </configuration>
    </plugin>
   </plugins>
  </pluginManagement>
 </build>
</project>

4
我同意,这是正确的答案。许多其他解决方案将暂时解决该问题,直到运行另一个Maven构建,此时JRE将重置为默认版本。将此插件添加到POM会更改默认的JRE版本。
matthewb 2012年

这在pom.xml中的什么位置(完整的XPATH)?无论我在哪里添加,Maven都抱怨pom格式错误。
艾德·兰德尔

2
这是正确的答案。接受的答案是一个临时解决方案!
Scott Offen 2012年


我的maven pom.xml中有此文件,仍然收到警告。一切似乎正常,但警告仍然存在
ropo

10

上面的解决方案以某种方式修复了项目或解决了问题。有时,您只是不想修复项目,而只是隐藏警告。

为此,请配置警告面板的内容,并确保关闭“构建路径”->“ JRE系统路径问题”类别。该对话框的UI面临一些复杂/奇怪/易用性的挑战,因此您可能不得不摆弄一些选项以使其能够完成所需的工作。


我有两个与JDK 7相同的工作区设置,但编译为1.6(我们最终将进行介绍)。良好的旧版Windows Update硬关闭了计算机,打开的工作区开始显示此内容,并且不会受到影响。感谢您指出解决方法!
RedYeti

13
或另一种更简洁的方法:窗口->首选项->
Java-

@RedYeti,这应该可以工作,但是不适合我(Eclipse 4.5)
NathanChristie 2015年

3

在eclipse首选项中,转到Java-> Installed JREs-> Execution Environment并为J2SE-1.4 设置一个JRE Execution Environment


这将暂时解决问题,直到运行另一个Maven构建,此时JRE版本将重置为默认版本。请参阅上面的Pascal Thivent的答案以更改POM中指定的JRE的默认版本。
matthewb 2012年

不,这正在更改已安装工作区的JRE,而不是用于特定项目的JRE(这是公认的答案)
AlBlue 2014年

3

产生此警告的实际原因是,您已将项目配置为以较早的JRE版本运行,然后再安装。通常,只要将旧项目与更新的JRE一起使用,就会发生这种情况。

这可能根本不会造成任何麻烦。但是,如果您想真正地处于保存状态,则应安装正确的旧JDK。您可以在这里找到它们:http : //www.oracle.com/technetwork/java/archive-139210.html

如果你再重新启动Eclipse你可以进入窗口>首选项>的Java>已安装的JRE>执行环境,并为你的情况J2SE-1.4[绝配]作为日食调用它。


由于我有一个Java 7项目并且仅安装了Java 8,因此被推荐。
Amedee Van Gasse

2

如果您有Java 1.8,则

您需要pom.xml中的xml部分并更新项目。

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

2

正如其他人所写,解决此警告的正确过程是进入项目的Properties并单击左侧的Java Build Path。现在,你会发现里面库窗口J2SE 1.5在这一个一个新的窗口会给你选择正确的可能性,双击Excecution环境。现在选择您的版本,警告将消失。


1

您是否将项目设置为符合1.4标准?如果是这样,请按照克罗克所说的去做。或者更确切地说,您需要选择J2SE-1.4执行环境,并检查要在1.4遵从模式下使用的已安装JRE之一。很可能您将安装1.6 JRE,只需检查一下即可。或者,如果有安装套件,则安装1.4 JRE,然后使用该套件。

否则,请转到Eclipse首选项Java->编译器,然后检查是否将一致性设置为1.4。如果是,请更改回1.6。如果不是,请转到项目属性,然后检查它是否具有项目特定的设置。转到Java编译器,然后取消选中是否要使用常规的Eclipse首选项。或将项目特定的设置设置为1.6,以便无论月食偏好如何,始终为1.6。


这将暂时解决问题,直到运行另一个Maven构建,此时JRE版本将重置为默认版本。请参阅上面的Pascal Thivent的答案以更改POM中指定的JRE的默认版本。
matthewb 2012年

0

只需在Window-> Preferences-> Java-> Installed JRE中更改版本。检查已安装的JRE列表。然后,右键单击您的项目->属性-> Java构建路径->库。将“ JRE系统库”更改为“已安装的JRE”中的版本。

警告将消失。



By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.