【发布时间】:2017-08-06 04:28:09
【问题描述】:
我们想在 JBoss 5.1.0 中生成线程转储。我们正在使用 SUSE Linux Enterprise Server 11 和 Java 1.7。
首先我们得到 JBoss 进程 id 并执行下面提到的命令。
jstack 16917 >> threaddump.log
我们收到命令未找到消息。
【问题讨论】:
我们想在 JBoss 5.1.0 中生成线程转储。我们正在使用 SUSE Linux Enterprise Server 11 和 Java 1.7。
首先我们得到 JBoss 进程 id 并执行下面提到的命令。
jstack 16917 >> threaddump.log
我们收到命令未找到消息。
【问题讨论】:
您是否确认 /bin 在您的路径中? Jstack 应该在 java 1.7 中可用。您还可以检查并确认 jstack 存在于您的
> echo $PATH
并确认 java/bin 出现在路径中。如果它不存在,您将需要修改用户配置文件并添加到您的路径配置中。
【讨论】:
JStack 从 Java 5 开始可用,并与 JDK 捆绑在一起,不适用于 JRE 版本。
如果是 *nix ,你可以尝试下面的方法来生成线程转储。
杀死 -3
(它只暂停java进程,并在线程转储产生后继续)
【讨论】: