一、问题描述
已经安装Java但使用jps时提示(本人系统Ubuntu22.04):
找不到命令 “jps”,但可以通过以下软件包安装它:
sudo apt install openjdk-11-jdk-headless # version 11.0.20.1+1-0ubuntu1~22.04, or
sudo apt install openjdk-17-jdk-headless # version 17.0.8.1+1~us1-0ubuntu1~22.04
sudo apt install openjdk-18-jdk-headless # version 18.0.2+9-2~22.04
sudo apt install openjdk-19-jdk-headless # version 19.0.2+7-0ubuntu3~22.04
sudo apt install openjdk-8-jdk-headless # version 8u382-ga-1~22.04.1
二、解决办法
查看、修改并保存环境变量:
vim ~/.bashrc
source ~/.bashrc
修改前:
修改后:
三、问题分析
上述两组环境变量中,主要更改是将 `JAVA_HOME` 相关的环境变量放在了前面。这可能导致`jps` 命令能够正常工作。
在Linux系统中,环境变量的顺序可能对命令的执行产生影响。通常情况下,当系统遇到命令时,会按照环境变量中 `PATH` 变量的顺序进行搜索,找到第一个匹配的命令并执行。因此,如果 `JAVA_HOME` 相关的路径没有在 `PATH` 变量的前面,可能会导致一些Java相关的命令无法被正确识别和执行。
通过将 `JAVA_HOME` 相关路径添加到 `PATH` 变量的前面,确保系统在查找命令时首先搜索到正确的Java路径,从而解决了 `jps` 命令无法执行的问题。