mac jdk多版本切换

作者: 三也视界 | 来源:发表于2021-08-13 22:55 被阅读0次

我们经常听到jdk、jre、jvm,它们有什么联系呢?

JDK

JDK全称 JAVA development kit JAVA开发工具,它包含 JRE,以及编译器和调试器等开发相关的文件

JRE

全称 JAVA runtime environment,JAVA运行时环境,它包含虚拟机,库函数,以及运行JAVA程序所必须的文件

JVM

全称是 JAVA virtual machine,JAVA虚拟机。它的目的是将 代码编译成 不同平台计算机可识别的代码

image

对于版本切换,只要切换JDK,相应的版本都会切换,下面进入正题。

查看当前 JDK 版本

java -version

输出

openjdk version "11.0.11" 2021-04-20 LTS
OpenJDK Runtime Environment Zulu11.48+21-CA (build 11.0.11+9-LTS)
OpenJDK 64-Bit Server VM Zulu11.48+21-CA (build 11.0.11+9-LTS, mixed mode)

查看当前 JDK 的安装目录

/usr/libexec/java_home

输出

/Library/Java/JavaVirtualMachines/jdk11.0.11/Contents/Home

查看已安装的 JDK 版本及目录

所有版本

/usr/libexec/java_home -V

输出

Matching Java Virtual Machines (3):

11.0.11 (x86_64) "Azul Systems, Inc." - "Zulu 11.48.21" /Library/Java/JavaVirtualMachines/jdk11.0.11/Contents/Home

1.8.261.12 (x86_64) "Oracle Corporation" - "Java" /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home

1.8.0_172 (x86_64) "Oracle Corporation" - "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_172.jdk/Contents/Home

/Library/Java/JavaVirtualMachines/jdk11.0.11/Contents/Home

也可以指定版本

/usr/libexec/java_home -V 1.8

输出

1.8.261.12 (x86_64) "Oracle Corporation" - "Java" /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home

1.8.0_172 (x86_64) "Oracle Corporation" - "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_172.jdk/Contents/Home

https://www.macz.com/?id=MTk4Mjg0Jl8mMTAxLjIyOC44NS4xODY%3D

Jdk多版本切换(Mac)

1、安装不同版本jdk(可以到官方直接下载安装)
2、编辑.bash_profile文件(在根目录底下)

touch .base_profile  创建该文件(一般不需要创建)

open .bash_profile   打开该文件

source .bash_profile 使该文件生效
# 设置 jdk 8
JAVA_8_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_172.jdk/Contents/Home
# 设置 jdk 11
JAVA_11_HOME=/Library/Java/JavaVirtualMachines/jdk11.0.11/Contents/Home


#alias命令动态切换JDK版本
alias jdk8="export JAVA_HOME=$JAVA_8_HOME"
alias jdk11="export JAVA_HOME=$JAVA_11_HOME"

export JAVA_HOME="/usr/libexec/java_home"  #最后安装的版本,这样当自动更新时,始终指向最新版本


PATH=$PATH:$JAVA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME PATH CLASSPATH
export PATH="/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:${JAVA_HOME}:${JAVA_HOME}/bin" 

通过输入jdk8便可以切换到jdk1.8
输入jdk11便可以切换到jdk11

相关文章

网友评论

    本文标题:mac jdk多版本切换

    本文链接:https://www.haomeiwen.com/subject/wwzjbltx.html