【Linux】更换jdk版本
目录
- 一、前言
- 二、查看jdk版本号
-
- 1、项目中的版本号(pom.xml)
- 2、服务器中的版本号
- 三、更换jdk版本
-
- 1、创建java文件夹
- 2、下载并解压JDK安装包
-
- ①、下载jdk安装包
- ②、移动到创建好的/usr/local/java路径下
- ③、解压jdk安装包
- 四、删除原来的jdk版本
-
- 1、删除原来的jdk版本
- 2、进入profile文件
- 3、添加环境变量
- 4、重新加载profile文件
- 五、查看jdk版本
- 六、更换jdk版本后,linux命令失效(踩坑记录)
-
- 1、出现命令失效的原因
- 2、临时解决方法
- 3、最终解决方法
一、前言
当我们创建好服务器后,需要将项目部署至服务器上,这时,我们应考虑服务器的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的,所以导致了命令失效的问题。

本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://www.net2asp.com/ed8e27e5cc.html
