mac系统/usr/libexec/java_home -v切换不同的java jdk不起作用
我们在开发程序时经常要切换到不同的jdk版本,所以快速的切换jdk版本能极大的提高开发效率。
系统提供的/usr/libexec/java_home命令帮助我们可以快速实现jdk的切换
但是在实际的使用过程中经常会碰到切换不起作用的情况出现,经过多次尝试发现有两个需要注意的地方,这两个地方的设置和顺序都不能变
编辑 ~/.bash_profile文件
#1.一定先把JAVA_HOME 清空
unset JAVA_HOME
#设置已经安装的版本,可以通过/usr/libexec/java_home -V查看
export JAVA_7_HOME=$(/usr/libexec/java_home -v1.7)
export JAVA_8_HOME=$(/usr/libexec/java_home -v1.8)
export JAVA_11_HOME=$(/usr/libexec/java_home -v11)
#设置临时切换jdk版本命令
alias jdk7="export JAVA_HOME=$JAVA_7_HOME"
alias jdk8="export JAVA_HOME=$JAVA_8_HOME"
alias jdk11="export JAVA_HOME=$JAVA_11_HOME"
#2.最后设置默认版本(二选一) finally set JAVA_HOME
export JAVA_HOME=$(/usr/libexec/java_home -v1.8)
#export JAVA_HOME=$JAVA_8_HOME
#把JAVA_HOME加入到path
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/lib:$JAVA_HOME/jre/bin
如果想立即生效
source ~/.bash_profile立即生效