当前位置:  开发笔记 > 编程语言 > 正文

如何在Eclipse中强制线程转储?

如何解决《如何在Eclipse中强制线程转储?》经验,为你挑选了3个好方法。

我正在通过BEA Weblogic Server v9.2运行时环境在Eclipse中启动Weblogic应用程序.如果这是直接从命令行运行,我会执行ctrl-BREAK来强制进行线程转储.有没有办法在Eclipse中做到这一点?



1> PhiLho..:

确实(感谢VonC指向SO线程),Dustin在评论他的消息时指出了jstack.

我在Eclipse中运行了一个小的Java应用程序(使用GUI),我可以在Windows的进程管理器中看到相关的javaw.exe及其PID,7088(当然,它在Unix中更简单).

如果我在命令提示符下键入jstack 7088,我每个线程都有所需的堆栈转储.
凉.

如果我们可以直接从Eclipse那样做会更好,但这已经很有用了.


直接从Eclipse启动外部工具很容易:菜单"运行 - >外部工具"或"运行"按钮旁边的工具栏按钮(为PID添加一个string_prompt)

2> 小智..:

查看SendSignal:http: //www.latenighthacking.com/projects/2003/sendSignal/



3> Denis R...:

您可以在调试模式下执行此操作:在调试透视图中转到调试视图,单击已启动的进程并单击暂停,您将获得所有进程的图形堆栈.

注意:这在使用远程调试时也有效,你不需要从eclipse启动weblogic,你可以自己启动它,打开调试端口并为它创建一个"远程java应用程序调试配置".

推荐阅读
郑谊099_448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有