V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Registering
V2EX  ›  问与答

Mac 的 jdk 版本配置

  •  
  •   Registering · 2015-09-15 21:14:20 +08:00 · 1746 次点击
    这是一个创建于 3309 天前的主题,其中的信息可能已经有所发展或是发生改变。

    关于修改 /usr/libexec/java_home 失败的问题,以前遇到过,后来没做笔记,忘记了。。惭愧

    在.bash_profile 中写如下语句

    # Mac 默认 JDK 6 ( Mac 默认自带了一个 jdk6 版本)
    export JAVA_6_HOME=$(/usr/libexec/java_home -v 1.6 )
    
    # 设置 JDK 8
    export JAVA_8_HOME=$(/usr/libexec/java_home -v 1.8 )
    
    usr/libexec/java_home
    
    #alias 命令动态切换 JDK 版本
    alias jdk6="export JAVA_HOME=$JAVA_6_HOME"
    alias jdk8="export JAVA_HOME=$JAVA_8_HOME"
    

    然后到命令行执行

    source ~/.bash_profile
    

    然后查看 java -version ,再执行上面定义的 jdk6 命令行,再查看 java -version
    如下

    QuinnChens-MacBook-Pro:~ Quinn$ java -version
    java version "1.8.0_45"
    Java (TM ) SE Runtime Environment (build 1.8.0_45-b14 )
    Java HotSpot (TM ) 64-Bit Server VM (build 25.45-b02, mixed mode )
    QuinnChens-MacBook-Pro:~ Quinn$ jdk6
    QuinnChens-MacBook-Pro:~ Quinn$ java -version
    java version "1.6.0_65"
    Java (TM ) SE Runtime Environment (build 1.6.0_65-b14-466.1-11M4716 )
    Java HotSpot (TM ) 64-Bit Server VM (build 20.65-b04-466.1, mixed mode )
    QuinnChens-MacBook-Pro:~ Quinn$
    

    如上,执行 jdk6 命令后, java -version 查看的结果也会相应变化,从 1.8 变为 1.6 ,但是,再看下面

    查看 /usr/libexec/java_home 依然没有变化,还是 1.8 (它应该是变成 1.6 )

    QuinnChens-MacBook-Pro:~ Quinn$ /usr/libexec/java_home
    /Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home
    

    所以很好奇 java -version 和 /usr/libexec/java_home 这两者的区别。

    今天在编译 android 源码,要求 jdk1.6 。很明显是要将 /usr/libexec/java_home 修改为 1.6 才可以。

    所以很好奇,如何修改 /usr/libexec/java_home 的值,是不是我最开始在 bash_profile 中的命令行并不会起到修改 /usr/libexec/java_home 的作用。

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2272 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 14:21 · PVG 22:21 · LAX 07:21 · JFK 10:21
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.