JVM学习问题记录(2) jps命令无法识别

现象:

命令行输入jps命令,提示"jps不是内部或外部命令,也不是可运行的程序"

背景:

学习JVM,测试jdk自带性能分析工具,需要用到jps工具

思路:

先怀疑自己

可能的原因

  • JDK安装有问题,无jps.exe
  • 环境变量设置问题,找不到jps.exe

动手:

  • 去JAVA_HOME配置的查看,发现jps.exe在,用绝对路径执行是正常的
  • 查看环境变量,JAVA_HOME和path配置也是正确的,echo结果也是对的
    这里就感觉很奇怪,而且试了下javac命令是正常的,那也不是路径配置问题,这里卡了很久
    后来灵机一动,去看了下java和javac实际的路径
bash 复制代码
where java
where javac

结果指向的不是自己配置的java路径,而是一个看起来默认的路径

shell 复制代码
C:\Program Files\Common Files\Oracle\Java\javapath\javac.exe

查看了下这个路径下的文件,确实有javac等几个基础的工具

同时去环境变量看了下,path下确实有这个路径

!\[问题记录2.png]

去网上查了下,说是安装较早版本的jdk,会在这个路径下创建一些小型代理exe,并且自动生成这个path,便于升级场景自动更新

结论:

oracle自动path干扰

解决方法,要么删了这个路径,要么把自己配置的路径放前面

我这里将%JAVA_HOME%\bin前移

验证Ok

复制代码
C:\Users\>jps -l
13816 jdk.jcmd/sun.tools.jps.Jps
相关推荐
海海不掉头发几秒前
CSDN博客_时序预测9模型复现对比
人工智能·学习·软件工程
蓝祁子yoky2 小时前
Qt学习日记 Day13:网络编程(一)-TCP基础与Socket实战
网络·qt·学习
架构师伯子明3 小时前
Ros 学习十三:IK Demo
学习
小羊没烦恼!3 小时前
关于分布式锁原理的一些学习与思考-redis分布式锁,zookeeper分布式锁
java·服务器·网络·学习·负载均衡
幼儿园蛋小黄3 小时前
从 STM32N647 的 AI 部署入门嵌入式:一条可落地的学习路线
人工智能·stm32·学习
Y.9995 小时前
电脑黑屏只有鼠标能动
学习
架构师伯子明5 小时前
FFmpeg C++学习(一):编译和demo
开发语言·c++·学习
叼烟扛炮5 小时前
[LangChain] 学习笔记(02):LCEL 链式调用与动态模型配置实战
服务器·开发语言·网络·笔记·学习·langchain
程序员梅雨5 小时前
【从零开始学习数据仓库 | 第二篇】: 拉链表 & 数仓分层
大数据·数据仓库·学习
一木 之林6 小时前
Dify学习笔记 04 · 检索底座:Embedding、Rerank与向量数据库(第46-54集)
笔记·学习·embedding·dify