Mac在已有jdk1.8的环境下安装jdk1.6 前言: 说明(失败方法): 正确方法:

原版博客:https://www.cnblogs.com/samsaramax/p/13299155.html

环境

系统:macOS Catalina
版本:10.15.5
已安装: 1.8.0_251


目的:

再安装一个jdk: 1.6.0


说明(失败方法):

首先使用下载官方安装包来安装的方法。

官方没有jdk1.6.0的dmg;

只有 rpm.bin.bin两个格式;参照网上教程,下载后,给予两个文件执行权限。

执行;一直提示下面信息;安装失败。

./jdk-6u45-linux-x64.bin: line 74: ./install.sfx.51784: cannot execute binary file



正确方法:

1、下载苹果官方提供的1.6jdk安装包

地址:

https://support.apple.com/kb/DL1572?locale=zh_CN

2、下载后直接安装的话,会提示“磁盘上已经有了更新的版本...”错误;

解决方法:

ps:确保刚刚打开的JavaForOSX.pkg已经推出;否则运行脚本时,提示“正忙错误”;

如果还是不小心发生了这个错误,删除脚本编辑器错误提示中文件夹下的“tmp“文件夹。

推出pkg,重新运行脚本即可。

打开Mac 自带的脚本编辑器,不是文本编辑器;输入以下代码

set theDMG to choose file with prompt "Please select javaforosx.dmg:" of type {"dmg"}

do shell script "hdiutil mount " & quoted form of POSIX path of theDMG

do shell script "pkgutil --expand /Volumes/Java\ for\ macOS\ 2017-001/JavaForOSX.pkg ~/tmp"

do shell script "hdiutil unmount /Volumes/Java\ for\ macOS\ 2017-001/"

do shell script "sed -i '' 's/return false/return true/g' ~/tmp/Distribution"

do shell script "pkgutil --flatten ~/tmp ~/Desktop/ModifiedJava6Install.pkg"

do shell script "rm -rf ~/tmp"

3、运行代码,期间弹出选择文件框,选取刚刚苹果官方下载的jdk安装包。

然后桌面会生成新的jdk安装包,运行新jdk安装包,安装即可。