2

我拼命尝试让 Eclipse Oxygen 在 Mac OSX 上运行 Java 9,但不知何故我似乎失败了。

到目前为止我已经完成的步骤:

  • 在 /Library/Java/JavaVirtualMachines/jdk-9.jdk 中安装了 Java 9 JDK(在已安装的 /Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk 旁边)

  • 从 Eclipse 市场安装了“Java 9 Support (BETA) for Oxygen 4.7”插件(我安装了 Oxygen 4.7 for Java EE Developers)

  • 在 eclipse.ini 中的 -vmargs 行之后添加了行“--add-modules=java.se.ee”(如此处建议:使用 java 9 ea,Eclipse 无法安装并显示错误“发生错误,请参阅日志文件 null" ) 以避免启动问题

  • 将设置中的编译器合规级别设置为“9(BETA)”

  • 将 Java 9 SDK 添加到已安装的 JRE 并使其成为默认选择

现在,在我的程序启动时,我打印出所有 System.getProperty() 值。例如,我得到

  • java.runtime.version:1.8.0_144-b01

  • java.specification.version:1.8

  • java.vm.specification.version:1.8

  • java.version: 1.8.0_144

为什么?!还有什么可以告诉 Eclipse 看在上帝的份上不使用 Java 8 而是使用 Java 9?

我需要 Java 9 的一个原因是 TLS 的新安全功能 OCSP 装订(请参阅https://docs.oracle.com/javase/9​​/security/java-pki-programmers-guide.htm#JSSEC-unique_4307382)。

系统属性“jdk.tls.server.enableStatusRequestExtension”在当前查询时返回“null”,但在 Java 9 中应该返回“false”:

getLogger().debug("enableStatusRequestExtension: " + System.getProperty("jdk.tls.server.enableStatusRequestExtension"));

我希望你能在这里帮助我。

4

2 回答 2

1

要使用 Java 9 运行程序,请执行以下操作:

打开首选项并转到“Java > 已安装的 JRE”。如果缺少 Java 9 JDK,请添加它。

在 Java 项目的 Properties 中,选择“Java Build Path”条目并选择“Libraries”选项卡。编辑“JRE System Library”条目并选择 Java 9 JDK 或 Java 9 执行环境。

您还需要查看程序的“运行配置”(“运行 > 运行配置”)。检查 JRE 设置是否为“项目执行环境”或 Java 9 JDK/执行环境。

于 2017-09-21T07:10:18.687 回答
0

安装 Java 9 后,这些步骤对我有用:

  • 右键单击项目并选择“配置构建路径”</li>
  • 选择顶部的“库”选项卡。如果 jre8 仍然存在,请选择它并从右侧的选项卡中按删除。
  • 选择“Add Library”,然后选择“JRE System Library”选择jre9。
  • 确认“Execution Environment is using JRE9”如图
  • 申请并关闭

完成后检查eclipse.inifil~\eclipse\jee-oxygen\eclipse\eclipse.ini并确保那里没有-vm选项。如果是,请删除整个选项和 JRE 路径,即: -vm. C:/Program Files/Java/jre1.8.0_151/bin. 这将导致 Eclipse 找出要使用的 Java 版本。

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

于 2017-12-11T04:30:47.063 回答