$ sudo rm /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0
备注:如果提示 “Operation not permitted”,是因为 Mac OS X 在 EL Capitan 之后加入了 Rootless 机制,不能再随心所欲的读写很多路径下的文件了。重启系统按住 Command + R 进入恢复模式,打开 实用工具 -> Terminal,执行 “csrutil disable” 即可关闭 Rootless ;同样步骤执行“csrutil enable” 即可恢复默认。
使用 Pacifist 提取 “Java for Mac OS X 10.5 Update 10”中的文件:
在 JavaForMacOSX10.5Update10.dmg 上 右键 -> 打开方式 -> Pacifist
找到 /System/Library/Frameworks/JavaVM.framework/Versions/ 目录,选中 1.5 和1.5.0 两个目录,右键 -> 安装到默认位置
Terminal
中切换到 jdk 1.5 的安装目录下,验证是否安装成功:
1 $ cd /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/bin
2 $ ./java -version
3 java version "1.5.0_30"
4 Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_30-b03-389-11M4833)
5 Java HotSpot(TM) Server VM (build 1.5.0_30-161, mixed mode)
Apple派的 JDK 1.6 与 JDK 1.5 在 OS X 上的安装路径是不同的,JDK 1.6 与 Oracle 派的 JDK 的安装路径一致,这点需要特别注意。
JDK 1.5 的安装路径:/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0
JDK 1.6 的安装路径:/Library/Java/JavaVirtualMachines/1.6.0.jdk
系统默认的 JDK 版本,是通过
link
来实现的,也就是说 Java 程序如 Maven、Eclispe 选择哪个 JDK 是通过各自的启动脚本,按照约定的
link
文件去查找 Java 程序的。比如 Maven 就会先找 Apple 派的 JDK 后找 Oracle 派的 JDK。
Apple 派的 JDK 通过把文件
/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK
link
到某个版本的 JDK 实现了多版本支持。
Oracle 派的 JDK 学习 Aplle 派的方法也支持多版本,
link
文件是
/System/Library/Frameworks/JavaVM.framework/Versions/Current
。
在
Eclipse
中配置 JRE
Preferences -> Java -> Installed JREs,将安装好的各版本 JDK 添加到列表中。