「Java」macOS切换JDK版本

在 Mac 系统上切换 JDK 版本,可以使用以下步骤:

  1. 使用 Finder 或其他文件管理工具,打开系统根目录(通常是 /)。

  2. 找到 Library/Java/JavaVirtualMachines 目录,该目录下存放着系统安装的所有 JDK 版本。

  3. 找到您想要使用的 JDK 版本,例如 jdk1.8.0_261.jdk。

    在该 JDK 版本目录下,找到 Contents/Home 目录,该目录下存放着 JDK 安装的核心文件。

    将该目录的完整路径(例如 /Library/Java/JavaVirtualMachines/jdk1.8.0_261.jdk/Contents/Home)复制到剪贴板。

    也可以通过命令打印 Java home

    1
    /usr/libexec/java_home -V

    打印如下:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    horustech@Horuss-MacBook-Pro booking % /usr/libexec/java_home -V
    Matching Java Virtual Machines (7):
    17.0.1 (x86_64) "Eclipse Temurin" - "Eclipse Temurin 17" /Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home
    16.0.2 (x86_64) "Amazon.com Inc." - "Amazon Corretto 16" /Users/horustech/Library/Java/JavaVirtualMachines/corretto-16.0.2/Contents/Home
    15.0.2 (x86_64) "Amazon.com Inc." - "Amazon Corretto 15" /Users/horustech/Library/Java/JavaVirtualMachines/corretto-15.0.2/Contents/Home
    1.8.321.07 (x86_64) "Oracle Corporation" - "Java" /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
    1.8.0_312 (x86_64) "Amazon" - "Amazon Corretto 8" /Users/horustech/Library/Java/JavaVirtualMachines/corretto-1.8.0_312/Contents/Home
    1.8.0_312 (x86_64) "Eclipse Temurin" - "Eclipse Temurin 8" /Library/Java/JavaVirtualMachines/temurin-8.jdk/Contents/Home
    1.8.0_311 (x86_64) "Oracle Corporation" - "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_311.jdk/Contents/Home
    /Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home
  4. 使用终端(Terminal)工具,执行以下命令来修改 JDK 版本:

1
$ export JAVA_HOME=<JDK路径>

例如:

1
$ export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_261.jdk/Contents/Home

或者手动编辑文件添加: 打开bash_profile文件加入JAVA_HOME

1
open ~/.bash_profile

添加最后一行,export JAVA_HOME="这里填刚才的路径"

  1. 执行以下命令来使修改生效:
1
$ source ~/.bash_profile
  1. 执行以下命令来检查 JDK 版本是否已成功切换:
1
$ java -version

如果您更改了 .bashrc 或其他配置文件,请按照实际情况进行调整。

此外,您还可以使用 alternatives 命令来管理系统中安装的 JDK 版本。该命令可以让您方便地在多个 JDK 版本之间进行切换,并且可以保证系统中只有一个默认的 JDK 版本。如果您想要了解更多关于 alternatives 命令的信息,可以在终端中执行 man alternatives 命令查看相关帮助文档。