10

我使用 Mac OS,10.6,在恢复备份数据后,Eclipse 停止工作。它给了我以下错误:

The container 'JRE System Library [JavaSE-1.6]' references non existing library '/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Classes/classes.jar'       

Unbound classpath container: 'JRE System Library [JavaSE-1.7]' in project 'Proba'

我试图再次安装 Java Development Kit (Help -> Install new software),Eclipse 实际安装了它,但是当我转到 (Eclipse -> Preferences -> Java -> Installed JREs) 时,出现错误"Installed JRE location no longer exists. JRE will be removed. Reason: JRE removed",并安装了 JREs 窗口确实是空的。Java 代码仍然无法编译。

解决方案:转到:Eclipse -> Preferences -> Java -> Installed JREs -> Execution Environment并选择 JAVA SE 6 包(可能 JAVA SE 7 可以工作),然后在右侧选择兼容的 JRE。

重新加载 Eclipse。

4

6 回答 6

19

两种可能:

1. 更新已安装的 JRE
(根据问题,执行以下操作之一)

  • 为失败的 JVM移除并重新创建Installed JREs实例。

    Eclipse -> Preferences -> Java -> Installed JRE

  • 安装新版本的 Java。(您可以在此处获取),然后使用 Eclipse 的“已安装的 JRE”创建一个新实例。将其设置为默认值。

    Eclipse -> Preferences -> Java -> Installed JRE

(如您所述)
2. 更新Execution Environment它以使其与 JRE 兼容。

转到Eclipse -> Preferences -> Java -> Installed JREs -> Execution Environment并选择一个兼容的环境。

于 2014-02-11T14:57:41.290 回答
3

以下是解决问题的方法:

  1. Mac 中的某些版本(例如 Lion)不附带 JDK;您可以直接从http://connect.apple.com下载一个。是的,您需要使用您的 Apple id 注册并登录。下载栏在右侧结束;你应该能够找到自己的方式。

  2. jdk 安装到不同的位置。这将导致 IDE(例如 Eclipse)无法找到源代码和 javadocs。

  3. 在撰写本文时,JDK 出现在此处:/Library/Java/JavaVirtualMachines/1.6.0_31-b04-415.jdk/Contents/Home 请继续查看您的 JDK 的结束位置;这无疑会随着时间而改变。

  4. 打开 Eclipse 首选项并转到 Java --> Installed JREs 页面

  5. 我们需要使用上面的 JDK 位置,而不是使用“JVM Contents (MacOS X Default)”

  6. 在撰写本文时,搜索按钮并不知道新的 JDK 位置;我们需要单击“添加”按钮并自己寻找它。

  7. 从添加 JRE 向导中,为 JRE 类型选择“MacOS X VM”

  8. 对于 JRE 定义页面,我们需要填写以下内容:JRE Home:/Library/Java/JavaVirtualMachines/1.6.0_26-b03-383.jdk/Contents/Home

  9. 其他字段现在将自动填充,默认 JRE 名称为“Home”。您可以快速将其更正为更有意义的内容:JRE name:System JDK

  10. 完成向导并返回到 Installed JREs 页面

  11. 从列表中选择“系统 JDK” 您现在可以正常地使用 javadocs 为基类(如 java.lang.String)正确显示的开发人员,在调试时正确显示源代码。

于 2014-02-14T11:49:06.523 回答
2

上面的错误只是说您的 JRE/JDK 已经移动了 Eclipse 变量,并且在 Eclipse 中定义的相关变量指向了现在不再存在的位置。

您所要做的就是将这些变量指向新位置,上面建议的方法很好。

于 2014-02-12T08:58:47.440 回答
1

4 种可能的替代方案:

  1. 重新配置库。
  2. 更新 JRE。
  3. 更新执行环境。
  4. 检查 MAC 更新。//Mac部分版本默认不支持JDK。但是您可以通过使用 JDK 而不是 Mac 默认变量来重新配置它来解决您的问题。

您可以尝试的另一件事是将 Eclipse 恢复到默认状态,即重新安装您正在使用的 Eclipse 版本。(顺便说一下,当我遇到类似问题时,这对我有用)。

于 2014-02-17T12:24:10.483 回答
0

我在 Spring Tool Suite(v 3.7.2) 上遇到了同样的问题,并采取了以下步骤来解决这个问题:

  1. cd $JAVA_HOME/jre(在 Mac 上)
  2. pwd(这将给出 JRE 目录的位置)
  3. STS > Preferences > Installed JREs > 添加 JRE 的位置
于 2016-12-03T23:31:28.383 回答
0

我的系统 Java 自我更新后发生了这种情况。我重新启动了 Eclipse,它进行了构建,并且错误消失了。

于 2018-10-17T02:58:07.243 回答