JDK的多版本管理软件主要有以下三种:
- jEnv
jEnv 是一个命令行工具,可以帮助您管理和切换不同版本的 Java 环境。它可以让您在不同的项目之间轻松切换 Java 版本。您可以使用 jenv global 命令设置全局 Java 版本,也可以使用 jenv local 命令设置特定项目的 Java 版本。
- jabba
jabba 是一个简单易用的命令行工具,用于切换不同版本的 Java 环境。它允许您在不同的终端会话中使用不同的 Java 版本。您可以使用 jabba ls-remote 命令查看可用的 Java 版本列表,然后使用 jabba use 命令切换到特定的 Java 版本。
- SDKMan
SDKMan 是一个用于管理软件开发工具包(SDK)的工具,不仅支持 Java,还支持其他编程语言的 SDK。通过 SDKMan,您可以安装和切换不同版本的 Java,以及其他工具和框架。您可以使用 sdk list java 命令列出可用的 Java 版本,然后使用 sdk use java 命令切换到特定的 Java 版本。
Jabba的主要优点是:
-
简单易用:Jabba提供了一个简单的命令行界面,方便安装和切换不同版本的Java。
-
跨平台支持:Jabba可以在多个操作系统上使用,包括 macOS、Linux和Windows。
-
可靠性:Jabba具有良好的稳定性和广泛的社区支持,可以满足大多数Java开发者的需求。
jEnv的主要优点是:
-
轻量级:jEnv是一个非常轻量级的工具,不依赖于外部依赖项,安装和配置都非常简单。
-
灵活性:jEnv可以与其他Java管理工具(如Maven和Gradle)无缝集成,提供更大的灵活性。
-
插件支持:jEnv可以通过插件扩展其功能,例如可以添加插件来支持其他语言的版本管理。
我选了jEnv,Mac端安装步骤如下:使用brew安装
安装 jEnv 的依赖项。在终端中运行以下命令:
bash
brew install jenv
这将使用 Homebrew 安装 jEnv 工具。
2.
将 jEnv 添加到 shell 配置文件,以使其在每个终端会话中自动加载。运行以下命令:如果您使用的是 Zsh 终端,
bash
echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(jenv init -)"' >> ~/.zshrc
如果您使用的是 Bash 终端,
bash
echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(jenv init -)"' >> ~/.bash_profile
重新加载 shell 配置文件,使 jEnv 生效。运行以下命令:
source ~/.zshrc
source ~/.bash_profile
这将重新加载 shell 配置文件,使 jEnv 在当前终端会话中生效。
4.
诊断 jenv 是否配置成功
bash
jenv doctor
5. 使用jenv add命令将不同版本的Java加入 jenv 中
我本机本别装了1.8,11,17三个版本,你的路径名称可能和我的不一样自己看下安装位置。
bash
jenv add /Library/Java/JavaVirtualMachines/jdk1.8.0_221.jdk/Contents/Home
jenv add /Library/Java/JavaVirtualMachines/liberica-jdk-11-full.jdk/Contents/Home
jenv add /Library/Java/JavaVirtualMachines/liberica-jdk-17-full.jdk/Contents/Home
查看已安装的JDK版本本地存储路径
bash
/usr/libexec/java_home -V
**6.**添加完后,设置全局版本
使用 jEnv,您可以方便地切换 Java 版本,以适应不同的开发需求和项目要求。您可以通过运行 jenv version
命令来验证当前的 Java 版本。
参考文献:
0、jEnv - Manage your Java environment
1、Mac 12.5 安装和使用jenv管理多版本java - 简书
-
设置全局 Java 版本:使用以下命令设置默认(全局)的 Java 版本:
bashjenv global <version>
将
<version>
替换为您要设置的具体 Java 版本(例如,1.8、11.0.1 等)。bashjenv global 1.8
-
设置本地 Java 版本:对于特定项目,您可以在项目目录中使用以下命令设置本地 Java 版本:
jenv local <version>
将
<version>
替换为您要设置的具体 Java 版本。 -
切换 Java 版本:使用以下命令切换当前会话的 Java 版本:
jenv shell <version>
将
<version>
替换为您要使用的具体 Java 版本。