CentOS7系统自带JDK及未找到jps命令解决

使用jps命令查看系统进程时,出现错误

centos7 jps缺少 linux jps命令找不到_jdk

首先查看是否已经安装了JDK

自带openJDK

CentOS7系统是自带有openJDK的,其JDK版本要大于1.5才支持jps命令,查看JDK版本:

java -version

查看JDK的环境变量

echo $JAVA_HOME

输出为空白,说明自带的openJDK是没有设置好环境变量的,此时设置其环境变量,一般自带的openJDK安装路径为:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.252.b09-2.el7_8.x86_64,但是可能自带多种版本的JDK

解决方案

在线安装openjdk-devel相关的安装包

此种方式仅支持CentOS7系统能访问外网的情况下,直接在线安装,注意修改为对应JDK版本

yum install -y java-1.8.0-openjdk-devel.x86_64

此时即可正常使用jps命令了!

卸载该包:

rpm -e java-1.8.0-openjdk-devel.x86_64

手动安装openjdk-devel相关的安装包

由于有些服务器无法访问外网,只能通过手动安装的方式

首先下载好安装包,下载地址为:http://mirror.centos.org/centos/7/os/x86_64/Packages/java-1.8.0-openjdk-devel-1.8.0.262.b10-1.el7.x86_64.rpm

随便放置在Linux系统一个文件夹下,在该文件夹下执行

rpm -ivh java-1.8.0-openjdk-devel-1.8.0.262.b10-1.el7.x86_64.rpm

如果出现“could not find libjava.so”以及“Could not find Java SE Runtime Environment.”的错误提示,可能说明目前系统存在多个版本的JDK,系统不知道该使用哪个,最好的解决办法是:卸载掉系统自带的JDK,使用自己安装的JDK

卸载JDK的方法

查看系统所带的JDK版本

rpm -qa|grep java

centos7 jps缺少 linux jps命令找不到_java_02

卸载这两个软件,此处由于已经博主已经卸载了1.7版本

卸载软件

rpm -e --nodeps java-1.8.0-openjdk-1.8.0.282.b08-1.el7_9.x86_64
rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.282.b08-1.el7_9.x86_64

再次查看

centos7 jps缺少 linux jps命令找不到_linux_03

此时就卸载干净了,接下来就是安装自己的JDK了

安装JDK的方法

  1. 下载好“jdk-8u202-linux-x64.tar.gz”
  2. 将压缩包放置在文件夹下,解压缩
tar -zxvf jdk-8u202-linux-x64.tar.gz
  1. 配置环境变量
vi /etc/profile

再文件结尾处加上(JAVA_HOME为刚刚解压缩的目录)

#java environment
 export JAVA_HOME=/home/jdk1.8.0_202
 export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
 export PATH=$PATH:$JAVA_HOME/bin

让配置文件生效

source /etc/profile
  1. 测试是否安装成功,如果没有成功,注意查看环境配置中的路径!!
java -version

安装完自己的JDK后,无需手动安装“java-1.8.0-openjdk-devel”,jps就可正常使用了!综合来看,centos7自带的openJDK存在着使用限制