前言

但凡mac重装系统总要设置java_home环境变量,这里做一下纪录,免去重复查询之苦。

如何在多个java版本间切换

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# Mac默认 JDK 6(Mac默认自带了一个jdk6版本)
export JAVA_6_HOME=`/usr/libexec/java_home -v 1.6`
# 设置 JDK 7
export JAVA_7_HOME=`/usr/libexec/java_home -v 1.7`
# 设置 JDK 8
export JAVA_8_HOME=`/usr/libexec/java_home -v 1.8`
#默认JDK 6
export JAVA_HOME=$JAVA_6_HOME
#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"

基本步骤

打开终端,新建.bash_profile文件

1
2
cd ~
vim .bash_profile

输入java_home环境变量,并保存

1
export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)

这种方法可以动态地获取这个环境变量,当自动升级了新版本的JAVA时,总能找到合适的JAVA_HOME目录,这里-v 可以指定java的版本,也可以不写使用默认的JAVA_HOME 路径


更新配置文件

1
source .bash_profile

查看java_home环境变量

1
echo $JAVA_HOME

永久配置

上面的方法配置的用户环境变量,并不是永久的配置方法,要永久配置要设置/etc目录下地profile文件

1
2
3
4
5
cd /etc
sudo vim profile
在文件中添加
JAVA_HOME=$(/usr/libexec/java_home -v 1.8)
export JAVA_HOME

然后强制保存退出,重启或注销使环境变量配置起作用。


参考

http://songzhan.iteye.com/blog/1893074
http://www.micmiu.com/lang/java/set-javahome-on-mac-os-x/
https://stackoverflow.com/questions/1348842/what-should-i-set-java-home-to-on-osx