随着 2012 年 2 月 Java 1.6 公开更新的结束,以及后来 1.7 的一长串安全更新,我倾向于从我的 Mac 中永久删除 Java 1.6 和 JDK,如果我知道如何在一个干净的方式。
小智 28
在 Mac OS X 10.7 中,Apple (Java 6) 提供的 JDK 安装在 /System/Library/Java/JavaVirtualMachines/ 中,所以只需从那里删除它
Oracle(Java 7)提供的JDK安装在/Library/Java/JavaVirtualMachines/
BMo*_*elo 18
直到今天我都有同样的问题。
来自macosx-port-dev 档案和如何在 OSX 上正确卸载 Java 6?:
我同意下面的评估,
(上一条信息)
我不知道你的问题的答案,但我可以建议你可能会给自己造成不必要的问题。
由于恶意使用 Java 的网站,安全更新很重要。但是无论如何你都不能在网络上使用 Java 6。您只能为小程序运行 Java 7。
Java 6 在您的机器上用于在独立应用程序中依赖它的遗留软件。安全问题不会影响这些应用程序。安全问题总是沙盒违规技巧,并且独立应用程序无论如何都不会运行 Java 沙盒。
但是,如果您希望摆脱 Java SE 6 的机器,正确的步骤是:
删除由软件更新安装和维护的“系统”JVM
% sudo rm -rf /System/Library/Java/JavaVirtualMachines/1.6.0.jdk删除所有 Java 开发人员预览版
% sudo rm -rf /Library/Java/JavaVirtualMachines/1.6.0*.jdk不要删除JavaVM.framework中的任何内容(注意:它在 下
/System/Library/Frameworks/JavaVM.framework)这些项目是 Java 7、8、9+ 以及 Java SE 6 所必需的。无论如何,OS X 的现代版本都没有内置 Java JDK。
关于上面说的答案:
不要删除JavaVM.framework中的任何内容(注意:它在 下
/System/Library/Frameworks/JavaVM.framework)
值得注意的是,它/System/Library/Frameworks/JavaVM.framework包含一个Versions文件夹,至少在我的情况下,该Versions文件夹包含:
lrwxr-xr-x 10 1.4 -> CurrentJDK
lrwxr-xr-x 10 1.4.2 -> CurrentJDK
lrwxr-xr-x 10 1.5 -> CurrentJDK
lrwxr-xr-x 10 1.5.0 -> CurrentJDK
lrwxr-xr-x 10 1.6 -> CurrentJDK
lrwxr-xr-x 10 1.6.0 -> CurrentJDK
drwxr-xr-x 238 A
lrwxr-xr-x 1 Current -> A
lrwxr-xr-x 59 CurrentJDK -> /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents
Run Code Online (Sandbox Code Playgroud)
让 CurrentJDK 指向一个不存在的目录似乎没有用,所以我在/System/Library/Frameworks/JavaVM.framework/Versions文件夹中运行了这个命令:
sudo ln -sf /Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents CurrentJDK
Run Code Online (Sandbox Code Playgroud)
因为那是我安装新 JDK 的地方。
更新:从我的机器上删除 Java 1.6 后,下次我运行 PhpStorm 时,它告诉我需要下载并安装 Java SE 6 运行时。之后,/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK链接被重置为/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents。因此,似乎 1.6 JDK(或至少是其中的 JRE 部分)可能会继续回归,具体取决于您使用的其他应用程序。
| 归档时间: |
|
| 查看次数: |
125250 次 |
| 最近记录: |