zoukankan      html  css  js  c++  java
  • mac同时安装jdk7和jdk8

    下载地址:http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html#jdk-7u80-oth-JPR

    推荐方式A:

    1. vi .bash_profile 输入以下内容  
    2. 然后执行source .bash_profile生效新配置 
    1. # Mac默认 JDK 6(Mac默认自带了一个jdk6版本)  
    2. export JAVA_6_HOME=`/usr/libexec/java_home -v 1.6`  
    3. # 设置 JDK 7  
    4. export JAVA_7_HOME=`/usr/libexec/java_home -v 1.7`  
    5. # 设置 JDK 8  
    6. export JAVA_8_HOME=`/usr/libexec/java_home -v 1.8`  
    7.   
    8. #默认JDK 6  
    9. export JAVA_HOME=$JAVA_6_HOME  
    10.   
    11. #alias命令动态切换JDK版本  
    12. alias jdk6="export JAVA_HOME=$JAVA_6_HOME"  
    13. alias jdk7="export JAVA_HOME=$JAVA_7_HOME"  
    14. alias jdk8="export JAVA_HOME=$JAVA_8_HOME"  

     默认jdk为1.6,执行jdk6或jdk7或jdk8后,通过java -version可看到已切换成相应版本。

    推荐方式B:

    1、安装jenv

    执行:curl -s get.jenv.io | bash

    jenv参考(关键是方便别的java工具管理):https://github.com/linux-china/jenv/wiki/Chinese-Introduction

    2、进入jenv目录,然后建相关目录:

    1. cd ~/.jenv/candidates/  
    2. mkdir java  
    3. cd java  
    4. mkdir 1.6  
    5. mkdir 1.7  
    6. mkdir 1.8  

    3、执行以下命令

    1. ln -s /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin ~/.jenv/candidates/java/1.6  
    2. ln -s /Library/Java/JavaVirtualMachines/jdk1.7.0_45.jdk/Contents/Home/bin ~/.jenv/candidates/java/1.7  
    3. ln -s /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/bin ~/.jenv/candidates/java/1.8  

    1、最先默认的jdk一般是你最后安装的那jdk。

    2、切换版本:jenv use java 1.8

    3、设置缺少版本:jenv default java 1.6

    不推荐方式:

    1. #区别在于:此部分是写死路径的  
    2. export JAVA_6_HOME=/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home  
    3. export JAVA_7_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_45.jdk/Contents/Home  
    4. export JAVA_8_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home  
    5.   
    6. #默认JDK 6  
    7. export JAVA_HOME=$JAVA_6_HOME  
    8.   
    9. #alias命令动态切换JDK版本  
    10. alias jdk6="export JAVA_HOME=$JAVA_6_HOME"  
    11. alias jdk7="export JAVA_HOME=$JAVA_7_HOME"  
    12. alias jdk8="export JAVA_HOME=$JAVA_8_HOME"  

    根据苹果的官方说明,Mac OS X 10.5 及以后的版本应该使用 /usr/libexec/java_home 命令来确定 JAVA_HOME (推荐方式A就是依据此原理)。

    例:

    1. //查看默认jdk的安装路径  
    2. /usr/libexec/java_home  
    3.   
    4. //查看jdk 1.6的安装路径  
    5. /usr/libexec/java_home -v 1.6  

    而在此之前的版本由于没有这个命令,则应该使用固定的 /Library/Java/Home 目录,也就是直接在环境变量中写死。

    1. //下面的几个目录其实是等价的链接关系,都指向的是默认的JDK。但是硬编码方式,不推荐。  
    2. JAVA_HOME=/Library/Java/Home  
    3. JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home  
    4. JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Home  

     因为不同的 Java 版本和不同的 Java 实现可能安装在了不同的目录下,所以使用硬编码的目录会有如下缺点:

    • 安装或升级新的 Java 后需要重新设置 JAVA_HOME(尤其是带版本号的目录)
    • 无法适应不同的 Java 实现(Apple和Oracle的)
    其他分析:
    1、打开终端输入执行:which java,显示/usr/bin/java
    2、执行cd /usr/bin/,再执行ls -ll |grep java,可看到java此命令是link到/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java
    3、执行:cd /System/Library/Frameworks/JavaVM.framework/Versions/ 进入后,再执行ls -ll,可看到Current -> A,也就是Current目录link到A目录。而A目录在安装第一个JDK时就存在,用来JDK多版本管理使用的(猜测是使用到JAVA_HOME)。
    另外:
    /System/Library/Frameworks/JavaVM.framework/Versions/ 下有多个不同(低)版本的目录,但它们链接的都是 CurrentJDK 目录。总之,这些Java都是苹果提供的Java,Oracle 或 OpenJDK 提供的 Java 不在此目录中。
    据说以前可在系统设置中“Java Preferences”对话框可设置当前jdk,再自动调整A目录内容,但我没看到过。
    Java 7 需要 Mac OS X 10.7.3 (Lion) 及以上版本才能安装。在浏览器中运行Java要求是64位浏览器,所以不支持Chrome, Safari 或 Firefox 没问题。
    当你的才华还撑不起你的野心时
    那你就应该静下心来学习
    当你的能力还驾驭不了你的目标时
    那就应该沉下心来历练
  • 相关阅读:
    安卓开发环境搭建
    css3实现漂亮的按钮链接
    mouseover与mouseenter的区别
    踩了一个在body上添加多个代理事件的坑
    javascript与生活:papago行车记录仪播放器golife无卫星图修复方法
    grunt入门之windows下搭建一个最基本的grunt项目
    一个简单的跨浏览器的弹出窗口的实现
    如何查询mysql中执行效率低的sql语句
    用PHP读写音频文件的信息(支持WMA和MP3)
    PHP功能类[获取客户端IP、页面跳转]
  • 原文地址:https://www.cnblogs.com/yang-xiansen/p/10371001.html
Copyright © 2011-2022 走看看