Linux 安装JDK8和卸载

目录

一、下载JDK8的rpm包

二、安装JDK

三、设置环境变量


Linux环境下安装JDK的方式有多种,可以通过rpm包、yum安装或者tar.gz压缩包。本章节会教大家通过前两者方式来安装JDK,压缩包的形式因为下载压缩包后上传到服务器环境下,将压缩包解压后配置环境变量就能安装成功,前两者的步骤已经包含了配置环境变量,所以就不做赘述。

一、rpm包安装JDK

1.1. 下载JDK的rpm包

从Oracle官网下载系统对应版本的JDK8的rpm包,,我的云服务器是64位的,所以下载的是x64版本,32位的系统请下载x86版本,下载地址如下:

Java Archive Downloads - Java SE 8

JDK包下载到本地后,通过Xftp或者FileZilla等远程工具将包上传至Linux服务器。

1.2. 安装JDK

安装前通过java -version命令查看本机环境之前有没有安装过JDK,有的话先卸载干净。

如上图所示通过java -version命令显示没有安装JDK,开始使用以下命令安装JDK:

# 将jdk-8u202-linux-x64.rpm替换为你下载的包名
sudo rpm -ivh jdk-8u202-linux-x64.rpm

1.3. 设置环境变量

编辑/etc/profile或你的shell配置文件(例如~/.bashrc),添加以下行:

export JAVA_HOME=/usr/java/jdk1.8.0_202-amd64export PATH=$JAVA_HOME/bin:$PATH

/usr/java/jdk1.8.0_202-amd64替换为你实际的JDK安装路径。

更新环境变量,执行以下命令:

source /etc/profile

# 或者如果你编辑的是~/.bashrc,使用

source ~/.bashrc

验证安装,执行命令:

java -version

如果安装成功,你将看到Java版本输出为1.8.0。

二、yum安装JDK

注:通过yum安装JDK的前提是你的服务器环境能够连通外网。

在Linux系统中,使用yum安装JDK 8的步骤如下:

2.1. 下载yum包

导入Oracle的JDK rpm包到你的系统的yum仓库中。你可以使用以下命令:

sudo yum install java-1.8.0-openjdk

一旦安装完成,你可以通过运行以下命令来验证安装:

java -version

2.2. 配置JDK环境变量

环境变量的配置方法同rpm安装方式一样,不过同样的要注意你们自己安装的JDK版本。

yum方式安装的JDK的安装路径,通常在/usr/lib/jvm/下,然后编辑/etc/profile配置文件(或者~/.bashrc~/.bash_profile)设置环境变量:

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64export PATH=$PATH:$JAVA_HOME/bin

然后执行命令source /etc/profile或者 source ~/.bashrc来应用更改,或重新开启一个终端窗口。

安装成功

三、卸载rpm安装的JDK

检测当前系统是否存在java环境

java -version

如果有的话就需要卸载,如下检测JDK版本信息

rpm -qa|grep jdk

卸载JDK,下述卸载命令后跟的jdk1.8-1.8.0_202-fcs.x86_64为上面的检测命令的结果,对应的是你本地安装的JDK版本。

rpm -e --nodeps jdk1.8-1.8.0_202-fcs.x86_64

至此,JDK卸载成功。

四、卸载yum安装的JDK

首先,你需要找出通过yum安装的JDK包名。可以使用以下命令:

yum list installed | grep -i jdk

一旦你知道了JDK的包名,例如java-1.8.0-openjdk,你可以使用yum命令卸载它:

sudo yum remove java-1.8.0-openjdk*

为了清除环境变量和其他相关配置,你可能还需要手动编辑/etc/profile~/.bashrc或者~/.bash_profile文件,并删除或注释掉有关JAVA_HOME和PATH的条目。

最后,为了确保变更生效,你可以重新登录或者手动执行以下命令:

source /etc/profile或者source ~/.bashrc

请注意,卸载JDK可能会影响到其他依赖Java的系统或应用,因此在执行卸载操作前,请确保没有其他依赖或者你已经做好了适当的备份和测试。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Kafka支持SSL/TLS协议技术深度解析

一、Kafka支持SSL/TLS协议技术深度解析 1. SSL/TLS协议概述 SSL(Secure Socket Layer,安全套接层)及其继任者TLS(Transport Layer Security,传输层安全)是为网络通信提供安全及数据完整性的一种安全协议。…

Unity 设计模式 之 【什么是设计模式】/ 【为什么要使用设计模式】/ 【架构和设计模式的区别】

Unity 设计模式 之 【什么是设计模式】/ 【为什么要使用设计模式】/ 【架构和设计模式的区别】 目录 Unity 设计模式 之 【什么是设计模式】/ 【为什么要使用设计模式】/ 【架构和设计模式的区别】 一、简单介绍 二、 Unity 设计模式 1、Unity 开发中使用设计模式的特点 2…

【Qt网络编程】Tcp多线程并发服务器和客户端通信

目录 一、编写思路 1、服务器 (1)总体思路widget.c(主线程) (2)详细流程widget.c(主线程) (1)总体思路chat_thread.c(处理聊天逻辑线程&…

汇编(实现C语言程序的调用)

一、ARM汇编指令 mov: 将一个值或寄存器的内容移动到另一个寄存器中。这个指令可以用来赋值。 示例:mov r0, #5 // 将立即数 5 移动到寄存器 r0 add: 执行加法操作,将两个操作数相加,并将结果存储在目标寄存器中。 示例:add r0, …

【Elasticsearch系列十四】Elasticsearch

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

如何使用 Next.js 进行服务端渲染(Server-Side Rendering, SSR)

文章目录 前言步骤 1: 创建 Next.js 应用步骤 2: 创建页面组件示例页面组件 步骤 3: 自定义 _app.js 文件步骤 4: 自定义 _document.js 文件步骤 5: 运行应用步骤 6: 构建和部署总结 前言 Next.js 本身就支持 SSR 并提供了一系列内置的方法来简化这个过程。下面将详细介绍如何使…

MySQL:事务的ACID特性隔离级别脏读、不可重复读、幻读、Next-Key锁——场景复现

目录 1、什么是事务 2、 事务的ACID特性 2.1 事务的隔离性 3、为什么要使用事务? 4、查看支持事务的存储引擎 5、使用事务 5.1 控制事务 5.1.1 开启事务 5.1.2 关闭事务 5.2 开始一个事务,执行修改后回滚 5.3 开始一个事务,执行修…

使用Addressables+SpriteAtlas打包产生冗余

1)使用AddressablesSpriteAtlas打包产生冗余 2)使用SBP打AssetBundle脚本引用丢失 3)Unity构建后处理(IPostprocessBuildWithReport等接口)抛出异常后,构建不会停止 4)Unity 2022.3.0版本使用Oc…

谷歌论文提前揭示o1模型原理:AI大模型竞争或转向硬件

Open AI最强模型o1的护城河已经没有了?仅在OpenAI发布最新推理模型o1几日之后,海外社交平台 Reddit 上有网友发帖称谷歌Deepmind在 8 月发表的一篇论文内容与o1模型原理几乎一致,OpenAI的护城河不复存在。 谷歌DeepMind团队于今年8月6日发布…

svn 1.14.5

svn1.14.5包 https://download.csdn.net/download/weixin_42120669/89765533 svn1.14.5汉化包64位 https://download.csdn.net/download/weixin_42120669/89765533 1.14.2包,含有汉化包 https://download.csdn.net/download/weixin_42120669/89765647

我的AI工具箱Tauri版-VideoClipMixingCut视频批量混剪

本教程基于自研的AI工具箱Tauri版进行VideoClipMixingCut视频批量混剪。 VideoClipMixingCut视频批量混剪 是自研AI工具箱Tauri版中的一款强大工具,专为自动化视频批量混剪设计。该模块通过将预设的解说文稿与视频素材进行自动拼接生成混剪视频,适合需要…

数据结构 ——— 算法的时间复杂度

目录 时间复杂度的概念 时间复杂度函数式 大O的渐进表示法的概念 大O的渐进表示法 时间复杂度的概念 在计算机科学中,算法的时间复杂度是一个函数(数学上的函数式),它定量描述了该算法的运行时间,一个算法执行所耗…

java工具安装教程

提示:先安装软件打开后关闭,在执行魔法操作 解压后会多个文件夹,从文件夹打开 要魔法哪款软件就打开对应的魔法脚本 比如:idea就运行idea魔法 点击打开 显示下面弹窗则成功,点击确定即可 打开IDEA查看:

Arthas thread(查看当前JVM的线程堆栈信息)

文章目录 二、命令列表2.1 jvm相关命令2.1.2 thread(查看当前JVM的线程堆栈信息)举例1:展示[数字]线程的运行堆栈,命令:thread 线程ID举例2:找出当前阻塞其他线程的线程 二、命令列表 2.1 jvm相关命令 2.…

面试题高频之token无感刷新(vue3+node.js)

无感刷新的基本原理 使用刷新令牌(refresh token): ○ 应用程序在首次登录成功后会获得一个访问令牌(access token)和一个刷新令牌(refresh token)。 ○ 访问令牌通常有较短的有效期&#xff0…

人工智能 | 基于ChatGPT开发人工智能服务平台

简介 ChatGPT 在刚问世的时候,其产品形态就是一个问答机器人。而基于ChatGPT的能力还可以对其做一些二次开发和拓展。比如模拟面试功能、或者智能机器人功能。 模拟面试功能包括个性化问题生成、实时反馈、多轮面试模拟、面试报告。 智能机器人功能提供24/7客服支…

Python习题 190:用类编写一个年会抽奖程序

(编码题)用 Python 的类编写一个年会抽奖程序,要求: 公司员工的名单用 Faker 来模拟构造,要求有姓名、部门(自己编写几个随机指定)、工号,名单数据类型为 pandas 的 DataFrame 类型 在抽奖项目的类中,有两个属性,一个是奖池,即要参与抽奖的员工名单,一个是获奖名单…

Python的基础知识,帮助初学者快速上手

Python 是一种广泛使用的高级编程语言,以其简洁的语法、动态类型系统和强大的标准库而著称。这里介绍一些Python的基础知识,帮助初学者快速上手。 1. 环境搭建 安装Python:可以从Python的官方网站(https://www.python.org/&…

学习之使用IDEA集成GIT

一、环境准备 1.1 配置git忽略文件 git.ignore 文件模版内容如下: # Compiled class file *.Class#Log file *.log# BlueJ file *.ctxt# Mobile Tools for Java (J2Me) *.mtj.tmp/# Package File *.jar *.war *.nar *.ear *.zip *.tar.gz *.rar.classpath .project .settings…

SDKMAN!关联已安装JDK

查看已经安装的JDK目录 xxx:~ xxx$ /usr/libexec/java_home -V Matching Java Virtual Machines (3):17.0.6, x86_64: "Java SE 17.0.6" /Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home11.0.10, x86_64: "Java SE 11.0.10" /Library/Java/J…