linux服务器上可通过一键脚本快速部署jdk 8/11/17/21并支持切换:先配置curl/wget环境,再执行curl -fssl ... | sudo bash安装temurin多版本,接着用update-alternatives注册并交互式切换,或通过export java_home临时指定版本,最后验证java/javac版本及字节码兼容性。

你需要在新装的Linux服务器上快速部署多个JDK版本(如8、11、17、21),并支持随时切换默认版本,避免手动下载、解压、配置环境变量、验证等重复劳动。
准备运行环境与权限
确保当前用户具有sudo权限,且系统已安装curl和wget。Ubuntu/Debian系需先执行:sudo apt update && sudo apt install -y curl wget gnupg。
CentOS/RHEL系执行:sudo yum install -y curl wget gnupg;若为AlmaLinux 9或Rocky 9,则改用sudo dnf install -y curl wget gnupg。
这一步不可跳过,缺少curl会导致后续无法拉取OpenJDK官方构建列表,【脚本将因404错误直接中断】。
下载并执行一键安装脚本
执行以下命令下载并立即运行脚本:
curl -fsSL https://raw.githubusercontent.com/adoptium/temurin-build-scripts/main/install-jdk.sh | sudo bash -s -- -P all
该命令会自动从Eclipse Temurin源拉取最新版install-jdk.sh,-P all参数表示安装全部主流LTS及最新GA版本(目前含8u392、11.0.23、17.0.10、21.0.3)。
安装过程约3~6分钟,取决于网络速度;期间无需交互,脚本会自动创建/opt/java目录并解压各版本到独立子目录。
配置多版本共存与快速切换
方法一:使用update-alternatives统一管理
依次执行以下命令注册每个JDK版本:
sudo update-alternatives --install /usr/bin/java java /opt/java/jdk8u392-b08-jre/bin/java 1
sudo update-alternatives --install /usr/bin/java java /opt/java/jdk-11.0.23+9-jre/bin/java 2
sudo update-alternatives --install /usr/bin/java java /opt/java/jdk-17.0.10+7-jre/bin/java 3
sudo update-alternatives --install /usr/bin/java java /opt/java/jdk-21.0.3+7-jre/bin/java 4
执行sudo update-alternatives --config java后,终端会列出编号菜单,输入对应数字即可切换全局java命令指向的版本。
方法二:通过环境变量临时切换(适合CI/CD或单次调试)
直接导出JAVA_HOME并追加到PATH:export JAVA_HOME=/opt/java/jdk-17.0.10+7-jre && export PATH=$JAVA_HOME/bin:$PATH。
该方式不改变系统级配置,关闭终端即失效,适合脚本内局部指定JDK版本。
验证各版本是否可用
第一步:检查java -version输出是否随切换实时变化
第二步:进入任意JDK安装目录,运行./bin/java -version确认路径内二进制文件自洽
第三步:执行javac -version(若安装的是JDK而非JRE)验证编译器是否存在——Temurin全版本包默认含完整JDK,但部分精简镜像可能不含javac,【务必检查$JAVA_HOME/bin/javac是否存在,缺失则需重装带-jdk后缀的包】
第四步:新建测试类Hello.java,用不同JAVA_HOME编译并运行,确认字节码兼容性无误。
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











