java 解决JDK内置工具不能使用问题

2023-10-20 10:45:11 浏览数 (1)

问题

在服务器上准备排查服务进程问题,想使用jstatjcmd这些工具,然后发现给我报了个错:

bash: jstat: command not found

这是什么鬼,程序正常跑着,难道JDK还有阉割版? 看看版本,这个很正常。

代码语言:javascript复制
java version "1.8.0_291"
Java(TM) SE Runtime Environment (build 1.8.0_291-b10)
Java HotSpot(TM) 64-Bit Server VM (build 25.291-b10, mixed mode)

那去看看bin下面是不是把这些工具全删了:

代码语言:javascript复制
echo $JAVA_HOME

结果没有 JAVA_HOME 路径,这难道又是从/usr/bin指过去的,怎么总是喜欢这么玩。

代码语言:javascript复制
which java

结果,还真的是

/bin/java

那再看看这个java是指向哪里的: 执行命令

代码语言:javascript复制
ll /bin/java

显示路径是:

/bin/java -> /etc/alternatives/java

那么也就是指向了 /etc/alternatives/,进去看一眼:

执行命令

代码语言:javascript复制
cd /etc/alternatives/

结果,指向的是/usr/java/jdk1.8.0_291-amd64/bin/java,好吧,应该是最后一层了。

java -> /usr/java/jdk1.8.0_291-amd64/bin/java ld -> /usr/bin/ld.bfd libnssckbi.so.x86_64 -> /usr/lib64/pkcs11/p11-kit-trust.so

进去看一眼:

代码语言:javascript复制
cd /usr/java/jdk1.8.0_291-amd64/bin/

命令基本都在这里,这里也是java的目录

appletviewer ControlPanel -> jcontrol extcheck idlj jar jarsigner java javac javadoc javafxpackager javah javap javapackager java-rmi.cgi javaws jcmd jconsole jcontrol jdb jdeps jhat jinfo jjs jmap jps jrunscript jsadebugd jstack jstat jstatd jvisualvm keytool native2ascii orbd

总结

机器一多,各种安装方式容易导致混乱如果可以,还是让运维同学统一安装基础应用,做到基础应用统一,使用时才会方便。

0 人点赞