繁体   English   中英

在 Mac OS 上安装 Java 的所有位置之间有什么区别?

[英]What are the differences between all the locations Java is installed on Mac OS?

我的 Mac 上有几种不同的 Java 可执行文件:

/usr/bin/java (symlink to /System/Library/Frameworks/JavaVM.framework/Versions/A/Commands/java)
/System/Library/Frameworks/JavaVM.framework/Versions/A/Commands/java
/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java
/Library/Java/JavaVirtualMachines/jdk-13.0.1.jdk/Contents/Home/bin/java 

它们中的大多数是 Java 13,除了/Library/Internet Plug-Ins/JavaAppletPlugin.plugin是 java 8。命令行中的which java为您提供/usr/bin/java ,同时双击 jar 文件打开/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java

每个位置之间有什么区别,每个位置存在的原因是什么?

部分答案: Internet Plug-Ins文件夹用于 Safari,它包含 Java8,因为这是运行小程序的唯一受支持版本:

https://en.m.wikipedia.org/wiki/Java_applet

Java 小程序自 2017 年 Java 9 以来已被弃用,并从 2018 年 9 月发布的 Java SE 11 (18.9) 中删除

加上https://en.m.wikipedia.org/wiki/Java_version_history

Java 11 是当前支持的长期支持 (LTS) 版本(“Oracle 客户将获得 Oracle 标准支持”); Oracle 于 2019 年 1 月为“遗留”Java 8 LTS 发布了最后一次免费的“公共更新”以供商业使用,否则它将仍然支持 Java 8,至少在 2020 年 12 月之前提供个人使用的公共更新。[3] Java 10 是之前支持的快速发布版本。 Java 10 支持于 2018 年 9 月开始支持 Java 11 的同一天结束。Java 7 不再公开支持,Java 9 已停止接收更新,因为 Java 9 是一个短期快速发布版本,已被取代Java 10 和现在的 Java 11。

所以小程序支持在 Java9 和 Java10 中存在,只是那些版本不再存在,而 Java8 存在。

您有 Java13,因为否则这是当前版本。 正如一个位置所说的jdk-13.0.1.jdk ,那应该是一个 JDK。 带有A/Commands/java的奇怪“框架”似乎不是“真实”的东西,Java 在所有平台上从binlib文件夹运行,即使在这些文件夹根本没有“传统”的 Windows 上也是如此。 那些命令事物可能是指实际 JDK 的存根/包装器。 但是我现在正在平板电脑上打字,所以我实际上无法检查。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM