centos7中如何优雅的动态切换jdk版本?

在 CentOS 7 中动态切换 JDK 版本可以通过多种方法实现,其中最常见的方法是使用 alternatives 命令,这是 CentOS 和其他基于 Red Hat 的系统中用于管理多个软件版本的标准工具。下面我会详细介绍如何使用 alternatives 命令来切换 JDK 版本。

步骤 1: 安装多个 JDK 版本

首先,确保你已经安装了多个 JDK 版本。你可以通过 RPM 包或直接下载二进制文件的方式安装 JDK。假设你已经安装了 Oracle JDK 和 OpenJDK。

使用 YUM 安装 OpenJDK 示例:
sudo yum install java-1.8.0-openjdk
sudo yum install java-11-openjdk
手动安装 Oracle JDK 示例:

下载 JDK 的 tar 文件,然后解压到 /opt 或其他你选择的目录。

sudo tar zxvf jdk-8uXXX-linux-x64.tar.gz -C /opt
sudo tar zxvf jdk-11.xxx-linux-x64.tar.gz -C /opt

步骤 2: 使用 alternatives 配置 JDK

使用 alternatives 命令来管理不同版本的 JDK。首先,你需要使用 alternatives --install 命令为每个 JDK 版本设置。

配置 JDK 8 和 JDK 11:
sudo alternatives --install /usr/bin/java java /opt/jdk1.8.0_xx/bin/java 2
sudo alternatives --install /usr/bin/java java /opt/jdk-11.xxx/bin/java 3

这里,23 是优先级,你可以根据需要设置不同的优先级。

步骤 3: 切换 JDK 版本

使用下面的命令来选择你想要使用的 JDK 版本:

sudo alternatives --config java

这个命令会列出所有配置的 JDK 版本,并允许你选择要激活的版本。

步骤 4: 验证 JDK 版本

切换版本后,使用下面的命令来验证当前使用的 JDK 版本:

java -version

这将显示当前激活的 JDK 版本的详细信息。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/625428.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【QuikGraph】C#调用第三方库计算有向图、无向图的连通分量

QuikGraph库 项目地址:https://github.com/KeRNeLith/QuikGraph 相关概念 图论、连通分量、强连通分量相关概念,可以从其他博客中复习: https://blog.csdn.net/weixin_50564032/article/details/123289611 https://zhuanlan.zhihu.com/p/3…

记录Spring Boot 2.3.4.RELEASE版注解方式实现AOP和通知的执行顺序

1.advice 按照以下的顺序执行 输出结果:(正常和异常) 说明:Spring boot 2.3.4.RELEASE 版本使用的AOP是spring-aop-5.2.9.RELEASE,AOP的通知顺序不一样。 可以测试下Spring boot 2.1.1.RELEASE 版做对比,发现结果是不一样的。 2…

在React中利用Postman测试代码获取数据

文章目录 概要名词解释1、Postman2、axios 使用Postman测试API在React中获取并展示数据小结 概要 在Web开发中,通过API获取数据是一项常见任务。Postman是一个功能强大的工具,可以帮助开发者测试API,并查看API的响应数据。在本篇博客中&…

不懂数字后端Box List、Polygon的意思?

什么是BOX? 景芯SoC做design planning的第一步就是确定floorplan的box,也就是设计的区域。这个区域可以划分为三个边界,如下图所示: Die Box 最外面一圈,我们称为 Die Box,也就是用来放置 IO 单元&#x…

Java面试八股之String类的常用方法有哪些

Java中String类的常用方法有哪些 获取字符串信息: length():返回字符串的字符数。 isEmpty():判断字符串是否为空(即长度为0)。 访问单个字符: charAt(int index):返回指定索引处的字符。 …

使用Docker创建verdaccio私服

verdaccio官网 1.Docker安装 这边以Ubuntu安装为例Ubuntu 安装Docker​,具体安装方式请根据自己电脑自行搜索。 2.下载verdaccio docker pull verdaccio/verdaccio3.运行verdaccio 运行容器: docker run -it -d --name verdaccio -p 4873:4873 ver…

29、Qt使用上下文菜单(右键菜单)

说明:使用四种方式实现鼠标右击界面,显示出菜单,菜单上有两个动作,选择两个动作,分别打印“111”和“222”。 界面样式如下: 一、方法1:重写鼠标事件mousePressEvent .h中的代码如下&#xff…

AIConnect 综合算力服务网络:引领智能未来,创造无限可能性!

2022年11月30日,由OpenAI开发的大模型聊天机器人GPT-3发布,首个完全意义上通过图灵测试的人工智能诞生了。这一里程碑事件的启发了人们对AI技术的发展和应用。在短短两年的时间里,各式各样的聊天AI,图片生成AI,视频生成…

B/S版+java开发的医院绩效考核系统maven+Visual Studio Code 医院绩效考核管理系统 提升医疗服务质量的关键

B/S版java开发的医院绩效考核系统mavenVisual Studio Code 医院绩效考核管理系统 提升医疗服务质量的关键 医院绩效评价系统的建设,优化医院绩效管理体系,规范化工作目标的设计、沟通、评价与反馈,改进和提供医院管理人员的管理能力和成效&am…

【强训笔记】day23

NO.1 思路:直接计算结果,先计算怪物可以抗几次攻击,再计算勇士受到的伤害,如果勇士的攻击力大于等于怪物的血量,那么就可以击杀无数只,如果勇士的血量正好是受到攻击的整数倍,那么击杀的怪物数…

深度解刨性能测试工具Locust

🍅 视频学习:文末有免费的配套视频可观看 🍅 关注公众号【互联网杂货铺】,回复 1 ,免费获取软件测试全套资料,资料在手,涨薪更快 Locust安装 …

强化训练:day8(求最小公倍数、数组中的最⻓连续⼦序列、字⺟收集)

文章目录 前言1. 最小公倍数1.1 题目描述1.2 解题思路1.3 代码实现 2. 数组中的最⻓连续⼦序列2.1 题目描述2.2 解题思路2.3 代码实现 3. 字母收集3.1 题目描述3.2 解题思路3.3 代码实现 总结 前言 1. 最小公倍数   2. 数组中的最⻓连续⼦序列   3. 字⺟收集 1. 最小公倍数…

安卓APP+TCP+服务器端

1、在.xml文件中添加权限 <uses-permission android:name"android.permission.ACCESS_WIFI_STATE"/><uses-permission android:name"android.permission.INTERNET"/>2、修改显示界面 <?xml version"1.0" encoding"utf-8&…

二叉树专题(有关二叉树的相关学习)

二叉树 1.数概念及结构 1.1树的结构 树是一种非线性的数据结构&#xff0c;它是由n&#xff08;n>0&#xff09;个有限结点组成一个具有层次关系的集合。把它叫做树是因 为它看起来像一棵倒挂的树&#xff0c;也就是说它是根朝上&#xff0c;而叶朝下的。 有一个特殊的结…

Git泄露(续)

接上一篇补充 git config --global user.name " " git config --global user.email 邮箱地址 配置用户名和邮箱 git commit 使其处于交互区&#xff0c;没有使用 -m&#xff0c;默认用vim 来编辑和提交信息 输入要提交的内容&#xff0c;然后按ESC建回到命令…

RT-DETR原创改进|加入SCNet中的SCConv[CVPR2020]自校准卷积模块!

⭐⭐ RT-DETR改进专栏|包含主干、模块、注意力机制、检测头等前沿创新 ⭐⭐ 一、 论文介绍 论文链接&#xff1a;http://mftp.mmcheng.net/Papers/20cvprSCNet.pdf 代码链接&#xff1a;https://gitcode.com/MCG-NKU/SCNet/ 文章摘要&#xff1a; CNN的最新进展主要致力于设计更…

2024年3月 电子学会 青少年等级考试机器人理论真题五级

202403 青少年等级考试机器人理论真题五级 第 1 题 下图程序运行后&#xff0c;串口监视器显示的结果是&#xff1f;&#xff08; &#xff09; A&#xff1a;0 B&#xff1a;1 C&#xff1a;3 D&#xff1a;4 第 2 题 下列选项中&#xff0c;关于74HC595移位寄存器芯片的…

更高效的数据交互实现丨 DolphinDB Arrow 插件使用教程

Apache Arrow 是一种跨语言的内存数据交换格式&#xff0c;旨在为用户提供高效的数据结构&#xff0c;以实现在不同的数据处理系统之间共享数据而无需进行复制。它由 Apache 软件基金会开发和维护&#xff0c;目前已经成为许多大型数据处理和分析框架的核心组件之一。在分布式框…

【解决】Unity Build 应用程序运行即崩溃问题

开发平台&#xff1a;Unity 2021.3.7f1c1   一、问题描述 编辑器 Build 工程结束&#xff0c;但控制台 未显示 Build completed with a result of Succeeded [时间长度] 信息。该情况下打包流程正常&#xff0c;但应用程序包打开即崩溃。   二、问题测试记录 测试1&#xf…

vulhub靶机struts2环境下的s2-032(CVE-2016-3081)(远程命令执行漏洞)

影响范围 Struts 2.3.19至2.3.20.2、2.3.21至2.3.24.1和2.3.25至2.3.28 当用户提交表单数据并验证失败时&#xff0c;后端会将用户之前提交的参数值使用OGNL表达式%{value}进行解析&#xff0c;然后重新填充到对应的表单数据中。 漏洞搭建 没有特殊要求&#xff0c;请看 (3…