CentOS 中配置 OpenJDK以及多版本管理

news/2024/9/19 7:55:24 标签: centos, linux, 运维

以下是在 CentOS 中配置 OpenJDK 的步骤:
一、安装 OpenJDK
使用以下命令检查系统中是否已经安装了 Java:

   java -version

如果已安装,会显示 Java 版本信息。如果未安装,则继续下一步。
使用 yum 安装 OpenJDK:

   yum install java-1.8.0-openjdk-devel

我更喜欢直接用镜像源下载,清华源ADOPtium目录

[root@localhost software]# wget https://mirrors.tuna.tsinghua.edu.cn/Adoptium/18/jdk/x64/linux/OpenJDK18U-jd
--2024-09-17 23:51:34--  https://mirrors.tuna.tsinghua.edu.cn/Adoptium/18/jdk/x64/linux/OpenJDK18U-jdk_x64_l
正在解析主机 mirrors.tuna.tsinghua.edu.cn (mirrors.tuna.tsinghua.edu.cn)... 101.6.15.130, 2402:f000:1:400::2
正在连接 mirrors.tuna.tsinghua.edu.cn (mirrors.tuna.tsinghua.edu.cn)|101.6.15.130|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:192590674 (184M) [application/octet-stream]
正在保存至: “OpenJDK18U-jdk_x64_linux_hotspot_18.0.2.1_1.tar.gz”

100%[=======================================================================================================

2024-09-17 23:53:34 (1.54 MB/s) - 已保存 “OpenJDK18U-jdk_x64_linux_hotspot_18.0.2.1_1.tar.gz” [192590674/192


二、设置环境变量
编辑 /etc/profile 文件:

   vi /etc/profile

在文件末尾添加以下内容:

   export JAVA_HOME=/usr/lib/jvm/jdk-1.8.0 #具体目录以下载的实际目录为准
   export PATH=$JAVA_HOME/bin:$PATH
   export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

注意,这里的JAVA_HOME路径可能因系统和安装的 OpenJDK 版本而有所不同。你可以通过以下命令确定实际的JAVA_HOME路径:

   update-alternatives --config java

该命令会列出系统中的 Java 安装,并显示其对应的路径。
使环境变量生效:

   source /etc/profile

三、验证安装

 java -version   #显示 OpenJDK 的版本信息,表明安装和配置成功

关于多版本的处理

update-alternatives 的基本用法
update-alternatives 是 Ubuntu 的软件多版本管理工具,基本用法为,

update-alternatives --install <link> <name> <path> <priority> [--force]

例如,我要创建一个符号链接 /usr/bin/cmake ,它指向实际安装路径 /usr/local/bin/cmake,则可以使用如下命令,

sudo update-alternatives --install /usr/bin/cmake cmake /usr/local/bin/cmake 1 --force
# /usr/bin/cmake 为链接的名字
# cmake 指定在 alternatives 文件夹下的名字
# path 为实际文件路径
# priority 给当前的实际文件指定一个值,值越大,权限越高

切换版本,以 cmake 为例,

update-alternatives --config cmake

查看已有的 alternatives 配置,

update-alternatives --list cmake

或者

update-alternatives --display cmake

为啥使用update-alternatives
简化多版本管理:
update-alternatives为管理同一程序的多个版本提供了一个集中的解决方案,使得切换默认版本变得简单快捷。
避免版本冲突:
在开发过程中,避免不同版本之间的冲突是非常重要的。通过update-alternatives,我们可以确保系统中只有一个版本是活跃的,从而减少可能的冲突。
提高开发效率:
当我们需要在不同版本的Python之间切换时,update-alternatives为我们提供了一个快速、有效的解决方案,从而提高了开发效率。


http://www.niftyadmin.cn/n/5665228.html

相关文章

基于OpenHarmony(开源鸿蒙)的智慧医疗综合应用系统

基于【OpenHarmony的智慧医疗综合应用系统】 一.了解OpenHarmony(开源鸿蒙)进行应用开发1.了解OpenHarmony架构2. 获取开发环境和工具3. 创建项目4. 开发应用5. 调试和测试6. 发布应用7. 学习和社区支持 二.基于开源鸿蒙(OpenHarmony)的智慧医疗综合应用系统业务场景设计1. 智能…

Acwing Trie树

Trie树&#xff08;字典树&#xff09; 主要用途&#xff1a;是用来高效存储和查找字符串集合的一种数据结构。查找时&#xff0c;可以高效的查找某个字符串是否在Trie树中出现过&#xff0c;并且可以查找出现了多少次。 利用字符串的公共前缀来减少查询时间&#xff0c;最大…

828华为云征文|华为Flexus云服务器打造《我的世界》游戏服务器

一、引言 在游戏的世界里&#xff0c;《我的世界》以其极高的自由度和创造性吸引了无数玩家。拥有一个专属的《我的世界》游戏服务器&#xff0c;可以让玩家和朋友们尽情享受定制化的游戏体验。2024年9月14日&#xff0c;我将向大家分享如何利用华为Flexus云服务器打造属于自己…

Foundation 折叠列表

Foundation 折叠列表 引言 在网页设计和开发中,折叠列表是一种常见且实用的界面元素,它允许用户展开和收起内容以节省空间并提高用户体验。Foundation 是一个流行的前端框架,它提供了一套强大的工具和组件来帮助开发者快速构建响应式和现代化的网页。本文将详细介绍如何在…

大语言模型特供版汉字:基于部首分解与图神经网络的多因素表示

汉字嵌部首&#xff0c;图卷蕴深机。嵌入相结合&#xff0c;结构见玄机。泛化能力强&#xff0c;共享共根基。 针对汉字在新环境下的调整&#xff0c;本文提出了一种结合传统字符嵌入与部首结构的图表示法&#xff0c;以捕捉汉字的语义和组成结构&#xff0c;专供大模型理解汉字…

python中的argparse的用法

argparse是 Python 标准库中用于命令行参数解析的模块。它可以方便地解析命令行参数&#xff0c;并提供了丰富的功能来处理各种参数类型和选项。 import argparse# 创建 ArgumentParser 对象 parser argparse.ArgumentParser(description这是一个示例程序&#xff0c;用于演示…

【Python报错已解决】AttributeError: ‘WindowsPath‘ object has no attribute ‘rstrip‘

&#x1f3ac; 鸽芷咕&#xff1a;个人主页 &#x1f525; 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想&#xff0c;就是为了理想的生活! 专栏介绍 在软件开发和日常使用中&#xff0c;BUG是不可避免的。本专栏致力于为广大开发者和技术爱好者提供一个关于BUG解决的经…

架构师论文备考-论面向对象建模及应用

摘要 2022年3月1日&#xff0c;我有幸加入公司新智慧公交项目的开发团队&#xff0c;担任项目架构决策的关键角色&#xff0c;并主要负责核心调度模块的设计与开发。在项目启动阶段&#xff0c;我们采纳了再工程的方法论&#xff0c;深入分析了既有平台的核心代码和功能&#x…