step1:卸载 OpenJDK (建议卸载)
Linux 系统默认是已经安装了 OpenJDK 的,这也就是为什么在你刚装好 CentOS 时,在终端输入java -version
这串命令时,不会返回Command not found
的错误,如下图:

- 在终端依次输入以下指令,便可卸载 OpenJDK
# 查询系统中已安装的与 OpenJDK 有关的包
[zodas@localhost ~]$ rpm -qa | grep java
# 切换到 root 身份
[zodas@localhost ~]$ su
# 只需卸载以下3个包即可
[root@localhost zodas]# rpm -e --nodeps tzdata-java-2016g-2.el7.noarch
[root@localhost zodas]# rpm -e --nodeps java-1.8.0-openjdk-1.8.0.102-4.b14.el7.x86_64
[root@localhost zodas]# rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.102-4.b14.el7.x86_64
- 终端输入
java -version
,验证是否安装成功,出现Command not found
,则表示卸载成功。
step2:安装 JDK
方式一:RPM 方式安装 JDK
- 官网下载 jdk-8u131-linux-x64.rpm
- 将下载的
jdk-8u131-linux-x64.rpm
放到桌面,打开终端(terminal)依次输入以下指令:
# 先切换到 root 身份
[zodas@localhost ~]$ su
# 切换工作目录到 Desktop
[root@localhost zodas]# cd Desktop/
# 使用 rmp 命令安装 JDK
[root@localhost zodas]# rpm -ivh jdk-8u131-linux-x64.rpm
tips: 执行rpm -ivh jdk-8u131-linux-x64.rpm
后,不断按回车默认安装就可以了
方式二:手动解压安装 JDK
- 官网下载 jdk-8u131-linux-x64.tar.gz
- 将下载的
jdk-8u131-linux-x64.tar.gz
放到桌面,打开终端(terminal)依次输入以下指令:
# 先切换到 root 身份
[zodas@localhost ~]$ su
# 将 jdk-8u131-linux-x64.tar.gz 拷贝到 /opt/installpackages 目录下
[root@localhost zodas]# mkdir /opt/installpackages
[root@localhost zodas]# cp ./Desktop/jdk-8u131-linux-x64.tar.gz /opt/installpackages/
# 将 JDK 解压到 /opt 目录下
[root@localhost zodas]# cd /opt
[root@localhost opt]# tar -xzvf /opt/installpackages/jdk-8u131-linux-x64.tar.gz
step3:配置 Java 环境变量
- 在终端输入
[zodas@localhost ~]$ vi /etc/profile
,以VI
打开/etc/profile
文件 - 键盘按下
i
键,进入insert
模式,在文件中增加以下内容:
若是以 方式一 安装的 JDK,则在文件中添加以下内容
# JDK1.8
export JAVA_HOME=/usr/java/jdk_1.8.0_131
export $PATH=$PATH:$JAVA_HOME/bin
若是以 方式二 安装的 JDK,则在文件中添加以下内容
# JDK1.8
export JAVA_HOME=/opt/jdk_1.8.0_131
export $PATH=$PATH:$JAVA_HOME/bin
- 按
Esc
键,退出insert
模式,输入:wq
(即保存并退出) - 在终端继续输入
[zodas@localhost ~]$ source /etc/profile
,使环境变量生效 - 在终端输入
[zodas@localhost ~]$ echo $PATH
,验证环境变量是否配置成功
另外,
如果按照以上步骤配置 JDK 环境变量后,新开一个终端,输入java -version
后,仍然出现Command not found
的问题?
每次都必须重新输入source /etc/profile
,才能解决上述的问题,这是为什么?明明已经配置好环境变量了?!
具体原因可参考”@Shell 的两种启动方式以及环境变量的配置“
解决办法:
方法一
修改完/etc/profile
后,重启系统,使环境变量永久生效。
方法二
- 打开终端输入
vi .bashrc
,即打开用户目录下的.bashrc
文件 - 修改文件中的内容,增加
. /etc/profile
这一行
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
. /etc/profile
fi
网友评论