Java 为什么在windows上运行jstack会产生';无法附加到64位进程';错误';?
我试过这个命令Java 为什么在windows上运行jstack会产生';无法附加到64位进程';错误';?,java,windows,multithreading,jvm,jstack,Java,Windows,Multithreading,Jvm,Jstack,我试过这个命令 jstack-l并得到以下错误- unable to attach to 64 bit process' error 然后我尝试了这个命令- jstack-F并获得此错误- Attaching to process ID <pid>, please wait... Error attaching to process: Windbg Error: GetModuleParameters failed! 正在附加到进程ID,请稍候。。。 附加到进程时出错:Windb
jstack-l
并得到以下错误-
unable to attach to 64 bit process' error
然后我尝试了这个命令-
jstack-F
并获得此错误-
Attaching to process ID <pid>, please wait...
Error attaching to process: Windbg Error: GetModuleParameters failed!
正在附加到进程ID,请稍候。。。
附加到进程时出错:Windbg错误:GetModuleParameters失败!
如何在Windows上成功运行jstack?更具体地说,我运行的是Windows 7。进一步了解Peter的上述评论,我发现,在Windows上,您必须 -以管理员身份运行jstack进程 -对jstack使用相同的Java安装,该安装用于启动要分析的流程
试图使用1.8.0_111-b14安装中的jstack从Java 1.8.0_40-b26 amd64下运行的进程中获取转储失败。使用1.8.0_40-b26 amd64中的jstack,我做到了。进一步考虑Peter的上述评论,我发现,在Windows上,您必须 -以管理员身份运行jstack进程 -对jstack使用相同的Java安装,该安装用于启动要分析的流程
试图使用1.8.0_111-b14安装中的jstack从Java 1.8.0_40-b26 amd64下运行的进程中获取转储失败。使用1.8.0_40-b26 amd64中的jstack进行了测试。我认为您是从不同的位置运行的。您需要从JDK的bin文件夹中运行该命令,在那里可以找到jstack 我想你是从另一个地方跑来的。您需要从JDK的bin文件夹中运行该命令,在那里可以找到jstack 我猜您正在以32位进程或其他用户的身份运行
jstack
。我建议您使用与同一用户相同的Java版本。我猜您正在以32位进程或不同用户的身份运行jstack
。我建议您使用与同一用户相同的Java版本。