mac切换jdk版本

来源:互联网 发布:python 写入文本文件 编辑:程序博客网 时间:2024/05/23 01:52

mac切换jdk版本

使用工具命令“/usr/libexec/java_home”来定位JAVA_HOME

export JAVA_6_HOME=`/usr/libexec/java_home -v 1.6`

这个工具命令在以下目录下:

/System/Library/Frameworks/JavaVM.framework/Versions/A/Commands/java_home

定义mac系统不同jdk版本的JAVA_HOME:

# Mac默认 JDK 6(Mac默认自带了一个jdk6版本)export JAVA_6_HOME=`/usr/libexec/java_home -v 1.6`# 设置 JDK 7export JAVA_7_HOME=`/usr/libexec/java_home -v 1.7`# 设置 JDK 8export JAVA_8_HOME=`/usr/libexec/java_home -v 1.8`
  • 关于export:
    export设置只对当前的bash登录session有效,只是把这个变量载入到内存中,而并没有写入哪个文件。而注销或重启之后,系统加载的磁盘上的文件。我们可以写入文件一般的文件。之后source它,使他在文件中生效,放在不同的文件地方效果不一样:比如放在 /etc/profile 里面,这样登录后会执行这里面的命令,对所有用户都有效。比如放在 ~/.bahs_profile 和 ~/.bashrc(home目录下针对bash这个shell)下。
#默认JDK 6export JAVA_HOME=$JAVA_6_HOME

利用alias设置切换jdk版本的别名

#alias命令动态切换JDK版本alias jdk6="export JAVA_HOME=$JAVA_6_HOME"alias jdk7="export JAVA_HOME=$JAVA_7_HOME"alias jdk8="export JAVA_HOME=$JAVA_8_HOME"

这样在console终端使用jdk6,jdk7,jdk8就可以动态的切换当前的jdk版本。

mac安装jdk1.6

  1. 系统默认安装的JRE路径
    /System/Library/Frameworks/JavaVM.framework/
    oracle和apple等安装的JDK包的路径
    /Library/Java/JavaVirtualMachines/

  2. JAVA_HOME目录
    /Library/Java/JavaVirtualMachines/1.6.0_38-b04-436.jdk/Contents/Home

  3. rt.jar、jsse.jar、tools.jar
    rt.jar和tools.jar已经在
    /Library/Java/JavaVIrtualMachines/1.6.0jdk/Contents/Classes/classes.jar中。
    jsse.jar也在Classes目录下。建议把classes.jar和jsse.jar建立软连接到/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/lib/下,并且classes.jar的软链接命名为rt.jar。也建一个为tools.jar的软链接。这样就可以避免一些时候会发生找不到rt.jar、tools.jar的问题了,例如在使用混淆码的时候。

以下链接在最新Mac系统不适用了
http://support.apple.com/kb/DL1573
需要使用
https://support.apple.com/kb/DL1572?locale=zh_CN


关于idea下jdk的问题:
https://intellij-support.jetbrains.com/entries/23455956-Selecting-the-JDK-version-the-IDE-will-run-under
里面有这一段话:

Mac OS XAt the moment all our products require Apple JDK 1.6 to be installed in order to run on Mac. JDK 1.7 from Oracle is not officially supported yet and has known problems that stop us from using it by default. Oracle JDK 1.7.0_40 has added support for Retina and works much better than previous versions on Mac. You are welcome to give it a try in case you have any problems with Apple JDK.To force running under JDK 1.7 edit /Applications/.app/Contents/Info.plist file, change JVMVersion from 1.6* to 1.7* :<key>JVMVersion</key><string>1.7*</string>

idea目前似乎必须要使用安装apple jdk 1.6,使用1.7以上的会有问题,如果想强制使用1.7以上的版本,需要按照上面的操作执行。


jdk1.6关联源码(利用ln -s建立软链接,如需查看用法,使用man ln或者ln –help进行查看):

xiahanglideMacBook-Pro:~ xiahangli$ sudo -sPassword:bash-3.2# cd /System/Library/Frameworks/JavaVM.framework/Homebash-3.2# ln -s /Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/docs.jarbash-3.2# ln -s /Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/src.jar

测试发现,软链接是存在了,但是源码依然无法识别这里写图片描述
目前还不知道如何得到mac版jdk1.6源码的方法,如有同行知晓,还希望留言告诉下,thx~

现在只好配置jre1.6运行环境然后利用idea自带的反编译工具查看代码了~>_<~
这里写图片描述

0 0
原创粉丝点击