How can I get the current stack trace in Java?

java, stack-trace

Solution

You can use `Thread.currentThread().getStackTrace()`.

That returns an array of `StackTraceElement`s that represent the current stack trace of a program.

Problem

How do I get the current stack trace in Java, like how in .NET you can do `Environment.StackTrace`? I found `Thread.dumpStack()` but it is not what I want - I want to get the stack trace back, not print it out.

Original source