CentOS7系统自带JDK及未找到jps命令解决
使用jps命令查看系统进程时,出现错误
首先查看是否已经安装了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
卸载这两个软件,此处由于已经博主已经卸载了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
再次查看
此时就卸载干净了,接下来就是安装自己的JDK了
安装JDK的方法
-
下载好“jdk-8u202-linux-x64.tar.gz”
-
将压缩包放置在文件夹下,解压缩
tar -zxvf jdk-8u202-linux-x64.tar.gz
-
配置环境变量
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
-
测试是否安装成功,如果没有成功,注意查看环境配置中的路径!!
java -version
安装完自己的JDK后,无需手动安装“java-1.8.0-openjdk-devel”,jps就可正常使用了!综合来看,centos7自带的openJDK存在着使用限制