How to Force Thread Dump in Eclipse?

31,509

Solution 1

Indeed (thanks VonC to point to the SO thread), Dustin, in a comment to his message, points to jstack.

I have run a little Java application (with GUI) in Eclipse, I can see the related javaw.exe in Windows' process manager and its PID, 7088 (it is even simpler in Unix, of course).

If I type at a command prompt jstack 7088, I have the wanted stack dump per thread.
Cool.

Would be better if we could do that directly from Eclipse, but that's already useful as is.

Solution 2

check SendSignal: http://www.latenighthacking.com/projects/2003/sendSignal/

Solution 3

You can do it when you are in debug mode: go to the debug view in the debug perspective, click on the process you have launched and click on pause, you will get a graphical stack of all your processes.

Note : this also works when using remote debugging, you do not need to launch weblogic from eclipse, you can launch it on its own, open the debugging ports and create a "remote java application debug configuration" for it.

Solution 4

Eclipse Wiki: How to Report a Deadlock lists all possible options of creating a thread dump in Eclipse. Depending on the concrete situation, one or the other may work better -- my personal favorite on Windows is the Adaptj Stacktrace tool.

Solution 5

StackTrace is another option that you could try. From the features:

Thread dump for Java processes running as a Windows service (like Tomcat, for example), started with javaw.exe, applets running inside any browser or JVMs embedded inside another process. StackTrace works on Windows, Linux and Mac OS X.

Share:
31,509
Paul Croarkin
Author by

Paul Croarkin

Less Paul; more code Les Paul; more guitar Java, JUnit, Spring, XML, WS, OOA/OOD, Agile Linkedin: http://www.linkedin.com/in/paulcroarkin SOreadytohelp

Updated on July 19, 2022

Comments

  • Paul Croarkin
    Paul Croarkin almost 2 years

    I'm launching a Weblogic application inside Eclipse via the BEA Weblogic Server v9.2 runtime environment. If this were running straight from the command-line, I'd do a ctrl-BREAK to force a thread dump. Is there a way to do it in Eclipse?