Linux系统下更换jdk版本详细步骤
一、前言
当我们创建好服务器后,需要将项目部署至服务器上,这时,我们应考虑服务器的jdk版本号和项目中使用的jdk版本号是否一致。若不一致,就需要更改服务器中的jdk版本号
二、查看jdk版本号
1、项目中的版本号(pom.xml)
可以看的出,项目中使用的jdk版本是11

2、服务器中的版本号
#查看jdk版本号 java -version

项目中的jdk版本和服务器中的jdk版本是不一致的,所以我们需要更换服务器中的jdk版本
三、更换jdk版本
1、创建java文件夹
#创建Java文件夹 mkdir /usr/local/java #切换至/usr/local路径下,进行查看创建好的java文件夹 cd /usr/local ls

2、下载并解压JDK安装包
①、下载jdk安装包

把下载到本地的jdk安装包上传到服务器中,一般是存在/tmp/路径下的

②、移动到创建好的/usr/local/java路径下
#移动到创建好的/usr/local/java路径下 mv jdk-11.0.19_linux-x64_bin.tar.gz /usr/local/java #切换路径 cd /usr/local/java

③、解压jdk安装包
#对jdk进行解压 tar -zxvf jdk-11.0.19_linux-x64_bin.tar.gz #查看解压好的jdk ls

四、删除原来的jdk版本
1、删除原来的jdk版本
rm -f /usr/bin/java rm -f /usr/bin/javac rm -f /etc/alternatives/java rm -f /etc/alternatives/javac

2、进入profile文件
#切换到根目录 cd ~ #进入到/etc路径下 cd /etc/ #编辑profile文件 vi profile

3、添加环境变量
进入profile文件后,输入i进行编辑,把以下环境变量放置最下方,然后按ESC退出编辑,输入:wq保存退出
# jdk environment #JAVA_HOME是安装jdk的路径 JAVA_HOME=/usr/local/java/jdk-11.0.19 CLASSPATH=.:$JAVA_HOME/lib.tools.jar PATH=$JAVA_HOME/bin:$PATH export JAVA_HOME CLASSPATH PATH

4、重新加载profile文件
#重新加载profile文件 source /etc/profile

五、查看jdk版本
#查看jdk版本 java -version

这时,我们可以看到,服务器中的jdk版本更换成了11。
六、更换jdk版本后,linux命令失效(踩坑记录)
1、出现命令失效的原因
我在/etc/profile文件中配置的环境变量如下:

一开始我更换完jdk版本后,输入其他命令还是有效的。当我重启服务器或者重新打开一个服务器的窗口时,再次输入命令,这时,命令失效并提示: command not found

2、临时解决方法
执行一下以下命令就能输入linux命令了,但是只是暂时有效。
export PATH=/usr/bin:/usr/sbin:/bin:/sbin:/usr/X11R6/bin

3、最终解决方法
在网上又找了其他方法,发现网上提供的配置环境变量的内容和我配置的环境变量的内容有所差异:
PATH= J A V A H O M E / b i n 这一行中,应该将 J A V A H O M E / b i n 放在 P A T H 之前,确保先搜索 J D K 的 b i n 目录。正确的写法是: P A T H = J A V A H O M E / b i n : JAVA_HOME/bin这一行中,应该将JAVA_HOME/bin放在PATH之前,确保先搜索JDK的bin目录。正确的写法是: PATH=JAVA_HOME/bin: JAVAHOME/bin这一行中,应该将JAVAHOME/bin放在PATH之前,确保先搜索JDK的bin目录。正确的写法是:PATH=JAVAHOME/bin:PATH
而我写的配置环境变量是没有添加:$PATH的,所以导致了命令失效的问题。

总结
到此这篇关于Linux系统下更换jdk版本的文章就介绍到这了,更多相关Linux更换jdk版本内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
idea使用spring Initializr 快速搭建springboot项目遇到的坑
这篇文章主要介绍了idea使用spring Initializr 快速搭建springboot项目遇到的坑,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-11-11
防止SpringMVC拦截器拦截js等静态资源文件的解决方法
本篇文章主要介绍了防止SpringMVC拦截器拦截js等静态资源文件的解决方法,具有一定的参考价值,有兴趣的同学可以了解一下2017-09-09
SpringCloud之@FeignClient()注解的使用详解
@FeignClient是SpringCloud中用于声明一个Feign客户端的注解,用于解决模块方法互相调用的问题,Feign是一个声明式的WebService客户端,通过Feign,只需要创建一个接口,并使用注解来描述请求,就可以直接执行HTTP请求了2024-11-11
java线程安全锁ReentrantReadWriteLock原理分析readLock
这篇文章主要为大家介绍了java线程安全锁ReentrantReadWriteLock原理分析readLock,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2022-10-10


最新评论