Java 想要在windows 10中进行线程转储吗?

Java 想要在windows 10中进行线程转储吗?,java,jdk1.8.0,Java,Jdk1.8.0,我想为windows 10计算机进行线程转储。我正在使用java版本“1.8.0\u 131”。要获取线程转储,我需要使用jmap命令,然后是进程的结束。但是在我的JDK中,我没有找到jmap实用程序。即使在我的机器中尝试,我也会遇到如下错误: C:\Users\Name\Desktop\JavaHeap>jmap 'jmap' is not recognized as an internal or external command, operable program or batch f

我想为windows 10计算机进行线程转储。我正在使用
java版本“1.8.0\u 131”
。要获取线程转储,我需要使用jmap命令,然后是进程的结束。但是在我的JDK中,我没有找到jmap实用程序。即使在我的机器中尝试,我也会遇到如下错误:

C:\Users\Name\Desktop\JavaHeap>jmap
'jmap' is not recognized as an internal or external command,
operable program or batch file.
我的JDk版本

C:\Users\Name\Desktop\JavaHeap>java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) Client VM (build 25.131-b11, mixed mode, sharing)
而且它似乎正在客户端VM上运行。有没有办法把它改成服务器虚拟机

--信息-- 我将我的JRE保存在
C:\ProgramFiles(x86)\Java\jre1.8.0\u 131
中。我创建了系统环境变量JAVA_HOME,并保留了它的路径。在PATH变量中,我也添加了路径


谢谢

听起来像是一个路径问题

确保文件jmap.exe位于Windows的系统变量path中指定的路径中

由于您已将
C:\ProgramFiles(x86)\Java\jre1.8.0_131
添加到变量中,您确定jmap.exe位于该变量中吗?通常它位于JDK\bin中,而不是JRE\bin

JRE(Java运行时环境)只包含运行Java程序所需的内容,而JDK还包括对开发有用的工具(Java开发工具包)

Windows在系统PATH变量中指定的所有路径中搜索命令。如果这些位置中没有jmap.exe,它将找不到它

如您所见,我的JDK包括jmap.exe:


如果您的文件中没有包含一个,我会检查您是从哪里获得的,然后尝试另一个来源,例如Oracle

确保jmap在您的PATH环境变量中。谢谢@SantiagoBenoit在信息部分更新了我的评论