mac ox上安装jdk 7版本不兼容问题

背景:

        需要在本机上编译Spark,但mvn编译scala貌似不如sbt快。因此下载了sbt,运行sbt发现卡死在某处通过搜索,了解到可能是Jdk 8 和sbt不兼容的原因,因此想办法下载了jdk7 updata 60。但在安装过程中发生了错误:

环境:

本机:mac os Serria Version 10.12.3 mac book pro

jdk 版本:1.7.0_60 64位

错误:

双击安装,显示版本不正确,报错如下图(Java from Oracle requires Mac OS X 10.7.3):

mac ox上安装jdk 7版本不兼容问题_第1张图片


两种解决方法:

  • 修改系统版本
        修改/ System/Library/CoreServices/SystemVersion.plist 文件,将系统版本临时改成10.7.3,安装完成之后再改回来。

        但是通过sudo等命令均不能成功修改该文件,显示无权限。

  • 通过搜索,我竟然在百度经验找到一个解决方案:百度经验

过程如下:

  • 双击安装包,使安装包挂在到机器上,即在Finder里可以看到一个名字为JDK 7 Update 60的Device。
  • 在terminal下输入以下命令,命令中的路径可能不同。
命令:
$ pkgutil --expand /Volumes/JDK\ 7\ Update\ 60/JDK\ 7\ Update\ 60.pkg /tmp/jdk.unpkg
$ cd /tmp/jdk.unpkg
$ vim Distribution

  • 在文件中将pm_install_check方法中的chekForMacOSX('10.7.3')中的版本号改成自己机器的版本号,或者将pm_install_check直接返回true
  • 重新打包

$ pkgutil --flatten /tmp/jdk.unpkg jdk.pkg

  • 安装

$ open /tmp/jdk.pkg

顺利安装jdk 7

你可能感兴趣的:(mac ox上安装jdk 7版本不兼容问题)