登录
首页 >  文章 >  java教程

SDKMAN管理Java版本使用指南

时间:2026-01-08 09:21:41 416浏览 收藏

偷偷努力,悄无声息地变强,然后惊艳所有人!哈哈,小伙伴们又来学习啦~今天我将给大家介绍《SDKMAN管理Java版本教程》,这篇文章主要会讲到等等知识点,不知道大家对其都有多少了解,下面我们就一起来看一吧!当然,非常希望大家能多多评论,给出合理的建议,我们一起学习,一起进步!

SDKMAN可稳定轻量管理多Java版本,安装后需运行source "$HOME/.sdkman/bin/sdkman-init.sh"初始化shell;支持temurin、graalce等发行版安装与use/default切换,项目级通过.sdkmanrc锁定,卸载后需flush并清理残留及手动JAVA_HOME。

如何使用SDKMAN管理Java版本_Java版本切换工具说明

SDKMAN 可以稳定、轻量地管理多个 Java 版本,无需手动配置 JAVA_HOME 或修改系统 PATH,切换版本只需一条命令。

安装 SDKMAN 后如何初始化 shell 环境

SDKMAN 依赖 shell 的初始化脚本加载环境变量,否则 sdk 命令不可用、java -version 不会响应切换结果。

  • 安装后必须运行 source "$HOME/.sdkman/bin/sdkman-init.sh"(Bash/Zsh)或重新打开终端
  • Zsh 用户若使用 oh-my-zsh,需确认 ~/.zshrc 中已包含 source "$HOME/.sdkman/bin/sdkman-init.sh",否则每次新开终端都要手动执行
  • Windows 上通过 WSL 使用 SDKMAN 时,不能依赖 PowerShell 或 CMD,必须在 WSL 的 Bash/Zsh 中操作

列出并安装指定 Java 版本(如 Temurin 17 和 GraalVM CE 22)

SDKMAN 默认只显示主流发行版的稳定版本,旧版、预发布版或特定厂商版本需显式启用通道或指定别名。

  • 运行 sdk list java 查看全部可选版本,带 temuringraalvmliberica 等前缀的为不同 JDK 发行版
  • 安装 Temurin 17:sdk install java 17.0.9-temurin(版本号需与 list 输出完全一致)
  • 安装 GraalVM CE 22:sdk install java 22.3.0-graalce(注意不是 graalvm,而是 graalce
  • 安装后不会自动设为默认,需额外执行 sdk default java sdk use java

全局切换 vs 当前 Shell 临时切换的区别

sdk use 只影响当前终端会话,关掉就失效;sdk default 写入 ~/.sdkman/etc/config,影响所有新启动的终端,但可能被项目级 .sdkmanrc 覆盖。

  • 临时测试某版本:用 sdk use java 11.0.22-temurin,退出终端即还原
  • 设为系统级默认:用 sdk default java 17.0.9-temurin,之后所有新终端都以此为准
  • 项目级锁定(推荐):在项目根目录建 .sdkmanrc,写入 java=17.0.9-temurin,进入目录时自动触发 sdk use
  • 验证是否生效:始终用 java -versionwhich java 双重确认,避免缓存或 alias 干扰

卸载版本和清理残留路径

仅用 sdk uninstall java 不会清除 JAVA_HOME 缓存或终端中已存在的 alias,可能导致后续 java 命令指向不存在的路径。

  • 先执行 sdk uninstall java ,再运行 sdk flush archives(删下载包)和 sdk flush temp(删临时文件)
  • 检查 $HOME/.sdkman/candidates/java 是否还存在对应版本目录,手动 rm -rf 遗留文件夹
  • 如果曾用 export JAVA_HOME=... 手动设过变量,需在 ~/.bashrc~/.zshrc 中删除该行,否则会覆盖 SDKMAN 的设置
  • IDE(如 IntelliJ)需重启并重新配置 Project SDK,它不自动监听 SDKMAN 的变更

最常被忽略的是 shell 初始化和 IDE 同步——哪怕 sdk current java 显示正确,IDE 或子进程仍可能沿用旧 JAVA_HOME。动手前先确认终端里 echo $JAVA_HOMEjava -version 一致,再进 IDE 检查。

终于介绍完啦!小伙伴们,这篇关于《SDKMAN管理Java版本使用指南》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布文章相关知识,快来关注吧!

前往漫画官网入口并下载 ➜
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>