jstack命令(Java Stack Trace)

本文详细介绍了JDK自带的各种实用工具,包括jstack命令在内的多种命令行工具的使用方法及应用场景,这些工具对于Java开发者来说非常有用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JDK内置工具使用

一、javah命令(CHeaderandStubFileGenerator)

二、jps命令(JavaVirtualMachineProcessStatusTool)

三、jstack命令(JavaStackTrace)

四、jstat命令(JavaVirtualMachineStatisticsMonitoringTool)

五、jmap命令(JavaMemoryMap)

六、jinfo命令(JavaConfigurationInfo)

七、jconsole命令(JavaMonitoringandManagementConsole)

八、jvisualvm命令(JavaVirtualMachineMonitoring,Troubleshooting,andProfilingTool)

九、jhat命令(JavaHeapAnalyseTool)

十、Jdb命令(TheJavaDebugger)

1、介绍

jstack用于打印出给定的java进程IDcorefile或远程调试服务的Java堆栈信息,如果是在64位机器上,需要指定选项"-J-d64"Windowsjstack使用方式只支持以下的这种方式:

jstack[-l]pid

java程序崩溃生成core文件,jstack工具可以用来获得core文件的javastacknativestack的信息,从而可以轻松地知道java程序是如何崩溃和在程序何处发生问题。另外,jstack工具还可以附属到正在运行的java程序中,看到当时运行的java程序的javastacknativestack的信息,如果现在运行的java程序呈现hung的状态,jstack是非常有用的。

2、命令格式
jstack[option]pid
jstack[option]executablecore
jstack[option][server-id@]remote-hostname-or-IP

3、常用参数说明

1)、options

executableJavaexecutablefromwhichthecoredumpwasproduced.

(可能是产生coredumpjava可执行程序)

core将被打印信息的coredump文件

remote-hostname-or-IP远程debug服务的主机名或ip

server-id唯一id,假如一台主机上多个远程debug服务

2)、基本参数:

-F当’jstack[-l]pid’没有相应的时候强制打印栈信息

-l长列表.打印关于锁的附加信息,例如属于java.util.concurrentownablesynchronizers列表.

-m打印javanativec/c++框架的所有栈信息.

-h|-help打印帮助信息

pid需要被打印配置信息的java进程id,可以用jps查询.

4、使用示例

<!--EndFragment-->
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值