tl;博士
/Library/Java/JavaVirtualMachines/ 是要安装 JVM 的正确位置。这种情况已经有好几年了。许多年前,使用过其他位置,但不再使用。
您可以选择多个供应商来获取安装程序应用程序,以便在您的 Mac 上安装 Java 实现。下载安装程序以在本地运行,然后丢弃,就像您通常对许多应用程序所做的那样。
您的问题提到了JavaFX/OpenJFX。您可能会发现使用与 OpenJFX 库捆绑在一起的 Java 实现很方便,例如来自 BellSoft 的 LibericaFX 或来自 Azul Systems 的 ZuluFX。
使用安装程序,卢克
其他建议 Homebrew 包管理器的答案对我来说似乎有点极端。我确信 Homebrew 有一些很好的用途。但是要简单地运行 Java 或进行 Java 编程,安装 Homebrew 是一个不必要的额外步骤。安装Homebrew (package manager) 以获取Java 的单一目标就像构建landing strip 来停放您的汽车而不是使用您的车道。如果你已经拥有它,很好,使用它。但是向那些只需要 Java 的人推荐 Homebrew 是很糟糕的建议。
尚未使用 Home-brew 的人只需从受信任的来源下载 Mac 安装程序即可。
您有多个来源来获取易于使用的安装程序应用程序,以便将 Java 安装到您的 Mac 上。在 Mac 上运行安装程序,就像在许多其他应用程序中一样。
这是查找 Java 11 源代码的流程图,其中一些还提供 Java 8。
从 Adoptium(AdoptOpenJDK.net) 等供应商处下载安装程序。
运行安装程序。
JavaVirtualMachines 文件夹现在是正确的
为什么甲骨文的安装程序不把它放在真正需要的地方?我该如何解决这个问题?
没问题。
文件夹/Library/Java/JavaVirtualMachines/ 是JVMs 在macOS 上的新家。
要安装 JVM,请使用下面讨论的安装程序。
要卸载,只需使用 Finder 从该文件夹中删除一个 JVM。系统将提示您输入系统管理员密码以完成删除。
Java 9 & 10 & 11
早在 2010 年,Apple joined、OpenJDK project、Oracle、IBM、Red Hat、Azul 和其他 Java 供应商。每个成员都为统一的 OpenJDK 代码库贡献源代码、测试和反馈。
Apple 为其 JVM 贡献了大部分 Mac 专用代码。现在 Apple 不再发布自己的 Mac 专用 JVM。您现在可以选择 JVM 供应商,构建来自 OpenJDK 代码库。
您可以在以下位置找到源代码:http://openjdk.java.net
新发布节奏
请注意,在 2017 年,Oracle、JCP 和 OpenJDK 采用了new rapid “release train” plan,以便以可预测的方式交付定期计划的 Java 版本。
阅读此 2018-07 Azul Systems 博客文章了解更多详细信息,Eliminating Java Update Confusion by Simon Ritter。
另请阅读Java Is Still Free。
供应商
有关过去和现在 JVM 实现的详尽列表,请参阅this page at Wikipedia。
这里是一些供应商的讨论。更多供应商请参见上面的流程图
Oracle JDK
Oracle 为包括 macOS 在内的多个平台提供 JDK 和 JRE 安装程序。
自收购 Sun 以来的这些年里,Oracle 结合了两个 JVM 引擎的最佳部分,HotSpot 和 JRocket,并将它们合并到 OpenJDK 项目中,作为他们自己的 Java 品牌实现的基础.
截至 2018 年,他们的新业务计划是在生产中提供 Oracle 品牌的 Java 实施,但在开发/测试/演示中免费使用。对以前版本的支持需要付费支持计划。他们已经宣布他们打算让他们的品牌版本与 OpenJDK 版本在功能上保持一致。他们甚至将他们的商业附加组件(例如 Flight Recorder)捐赠给了 OpenJDK 项目。
Oracle 还发布了不支持的 OpenJDK 版本:http://jdk.java.net/
Oracle 生产了一个特殊用途的 JDK,GraalVM。
Zulu & Zing by Azul
Azul Systems提供多种JVM产品。
- 他们的
Zulu 线路直接基于 OpenJDK,可通过可选的付费支持计划免费获得。
- 他们的
Zing 线提供商业 JVM 产品,这些产品通过替代技术实现(例如专用的 garbage-collector)得到增强。
他们的两条线都提供 macOS 的安装程序。
我目前在 macOS High Sierra 和 IntelliJ 2018.2 和 Vaadin 8 上使用 Zulu for Java 10.0.1。我downloaded from this page。顺便说一句,我确实没有在 Apple System Preferences 应用程序上找到任何与 Java 相关的项目。
采用
Adoptium,以前称为 AdoptOpenJDK,是社区主导的构建 OpenJDK 源代码二进制文件的努力。许多其他 Java 实现供应商在 Adoptium 支持这项工作。
OpenJ9 by Eclipse
OpenJ9 项目是 JVM 引擎的另一个实现,是 HotSpot 的替代方案。
现在由 Eclipse 基金会赞助,技术和支持由 IBM 于 2017 年捐赠。
对于预构建的二进制文件,他们将您推荐给上面提到的 AdoptOpenJDK 项目。
如何安装
Oracle 或 Azul 提供的安装程序都非常易于操作。只需在 Mac 上运行安装程序即可。将出现一个窗口以指示安装进度。
完成后,通过以下方式验证您的 JVM 安装:
- 访问
/Library/Java/JavaVirtualMachines/ 文件夹以查看新 JVM 的项目。
- 运行 Terminal.app 等控制台并输入
java -version 以查看 JVM 的品牌和版本号。
验证成功后,在 Finder 中卸载 .dmg 映像。然后删除您下载的 .dmg 文件。