在Linux环境配置多版本jdk,这里以8和17为例

步骤1: 下载Java 17 JDK

  1. 访问Oracle官网下载Java 17 JDK:

  2. 登录并接受许可协议:

    • 如果你是Oracle用户,登录你的账户。如果不是,你可能需要创建一个账户或接受Oracle的许可协议才能下载。
  3. 选择Java 17下载:

    • 在下载页面上,选择适合你的操作系统和架构的版本。博主这里第一次下错了下成arm版本,大家细心点吧哈哈。
  4. 下载 JDK 17:

    • 点击下载链接,下载名为 jdk-17_linux-x64_bin.tar.gz 的压缩包。(这里看个人需要的对应包)
  5. 使用wget下载(如果浏览器下载不成功):

    wget --no-cookies --no-check-certificate --header "Cookie: oraclelicense=accept-securebackup-cookie" https://download.oracle.com/otn-pub/java/jdk/17/latest/jdk-17_linux-x64_bin.tar.gz
    

6.确认Java8是否已存在

# Java 8 通常预装在许多Linux发行版中
# 使用下面的命令检查Java 8是否已安装,未安装按照以下步骤进行即可。
java -version

在这里插入图片描述

步骤2: 安装Java 17 JDK

  1. 解压 JDK 17:

    • 使用 使用 tar 命令解压到 /usr/lib/jvm/ 目录(原因是该目录是系统默认的用于存放JDK的标准目录):

      sudo tar -xzf jdk-17_linux-x64_bin.tar.gz -C /usr/lib/jvm/
      
  2. 验证安装:

    • 解压完成后,使用ls命令检查 JDK 是否已正确解压到/usr/lib/jvm/:

      ls -l /usr/lib/jvm/
      

在这里插入图片描述

  1. 设置环境变量(可选):

    • 打开你的 shell 配置文件,例如/.bashrc或/.bash_profile,添加以下行来设置JAVA_HOME环境变量:

      export JAVA_HOME=/usr/lib/jvm/jdk-17.0.12
      export PATH=$JAVA_HOME/bin:$PATH
      
    • 然后,使更改生效:

      source ~/.bashrc
      
  2. 验证 Java 版本:

    • 验证 JDK 17 是否正确安装并设置:

      java -version
      

    在这里插入图片描述

步骤3: 配置 update-alternatives

  1. 安装alternatives

    yum install alternatives
    

在这里插入图片描述

  1. 配置 Java 版本(后面的数字决定优先级):

    sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-2.el8_5.x86_64/jre/bin/java 1
    sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-2.el8_5.x86_64/bin/javac 1
    sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk-17.0.12/bin/java 2
    sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk-17.0.12/bin/javac 2
    
  2. 设置默认的 Java 版本:

    sudo update-alternatives --set java /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-2.el8_5.x86_64/jre/bin/java
    sudo update-alternatives --set javac /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-2.el8_5.x86_64/bin/javac
    

步骤4: 编写切换脚本

  1. 创建切换脚本文件:

    vim /usr/local/bin/switch-java.sh
    
  2. 编写脚本内容:

#!/bin/bash
   # 接受一个参数,用于选择Java版本
   
   version=$1
   
   # 根据参数选择Java版本
   if [ "$version" -eq 1 ]; then
       java_path=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-2.el8_5.x86_64
       javac_path=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-2.el8_5.x86_64/bin
   elif [ "$version" -eq 2 ]; then
       java_path=/usr/lib/jvm/jdk-17.0.12
       javac_path=/usr/lib/jvm/jdk-17.0.12/bin
   else
       echo "Invalid version. Use 1 for Java 8 or 2 for Java 17."
       exit 1
   fi  
   # 更新Java和Javac的链接
  sudo update-alternatives --set java "$java_path/jre/bin/java"
  sudo update-alternatives --set javac "$javac_path/javac"
   # 打印当前Java版本
  echo "Switched to Java version:"
   java -version
  1. 保存并退出编辑器:

    • 按下 Esc,

      :wq
      

      退出

  2. 给予脚本执行权限:

    sudo chmod +x /usr/local/bin/switch-java.sh
    

步骤5: 配置全局使用

  1. 将脚本添加到 PATH 环境变量(如果尚未添加):

    shell解释# 打开用户配置文件
    nano ~/.bashrc
    
    # 在文件末尾添加以下行
    export PATH=$PATH:/usr/local/bin
    
    # 保存并退出编辑器
    
  2. 应用环境变量更改:

    source ~/.bashrc
    
  3. 测试脚本(任意目录均可):

    # 切换到Java 8
    switch-java.sh 1
    

在这里插入图片描述

 # 切换到Java 17
   switch-java.sh 2

在这里插入图片描述

  1. 验证 Java 版本:
   java -version

在这里插入图片描述

5.到此大功告成

你看完了?可以给我点点赞吗关注一下博主公众号,全部技术文档也都在此集合喽
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我不会敲代码a

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值