• 【原创】在 Mac OS X 上打造舒服的开发环境(一)—— 同时安装多个版本的JDK(JDK 1.5 ~ JDK 1.8)


      虽然 Java 8 的正式版已经发布了两年有余,但目前 Java 企业级应用的主打版本还是 Java 6 和 Java 7,更惨的是公司的一些早期项目还必须在 Java 5 下开发运行,而我还想在工作之余体验+学习 Java 8 的新特性。于是,我需要在我的 Mac 上同时安装 JDK 1.5,JDK 1.6, JDK 1.7 和 JDK 1.8。

      过去 Mac 上的 Java 都是由 Apple 自己提供的,但只支持到 Java 6,并且从 OS X 10.7 开始系统不再默认安装了(可选安装,原自带的是 JDK 1.6)。后来 Apple 加入 OpenJDK 阵营继续支持 Java 6,而从 Java 7 开始由 Oracle 负责提供。暂且认为是 Apple 派 和 Oracle 派

    在 Terminal 中输入 java -version 可查看当前JDK版本信息,如果还没安装任一JDK,就会提示安装,点击后会跳到 Oralce Java 的下载网页。

     

    系统环境

      OS X EI Capitan(版本 10.11.5)

     

    前期准备

    1. Java安装包
    2. 辅助工具
      • Pacifist:用于提取*.dmg安装包中的文件(点我下载

     

    安装步骤

    JDK 1.6 及以上版本的安装过程较为简单,不再赘述。下面着重介绍安装 JDK 1.5 的过程。

    1. 删除系统中的默认目录文件:

      $ 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” 即可恢复默认。

    2. 使用 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 两个目录,右键 -> 安装到默认位置 
    3. 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/CurrentJDKlink 到某个版本的 JDK 实现了多版本支持。

    Oracle 派的 JDK 学习 Aplle 派的方法也支持多版本,link 文件是 /System/Library/Frameworks/JavaVM.framework/Versions/Current

     

    在 Eclipse 中配置 JRE

    Preferences -> Java -> Installed JREs,将安装好的各版本 JDK 添加到列表中。 

    注:本文不包含JDK多版本管理切换的部分。

    参考

    1. Mac osx 10.9 安装jdk1.5
    2. MAC下安装多版本JDK和切换几种方式
    3. 如何在 OSX 中使用多个JDK版本

    本文地址:http://www.cnblogs.com/midnight-coder/p/5561665.html

  • 相关阅读:
    net中System.Security.Cryptography 命名空间 下的加密算法
    关于如何生成代码的帮助文档的链接
    Application.EnableVisualStyles();
    VS2010里属性窗口中的生成操作
    把普通的git库变成bare库
    MultiTouch camera controls source code
    android onTouch()与onTouchEvent()的区别
    iOS开发中常见的语句@synthesize obj = _obj 的意义详解
    java nio 快速read大文件
    使用ndk standalone工具链来编译某个平台下的库
  • 原文地址:https://www.cnblogs.com/midnight-coder/p/5561665.html
Copyright © 2020-2023  润新知