I'm trying to hunt down what's causing the dreaded "OutOfMemoryError : heap space" error in my monster (standalone desktop Java/Spring3x/Hibernate3x/AtomikosJTA/Maven/MySQL5x/Swing/Eclipse app) . I see where you can place -XX:+HeapDumpOnOutOfMemoryError and -XX:+HeapDumpOnCtrlBreak as VM arguments . Not sure what effect the latter would have when executing from within an IDE. So is there a snigglet of code that will trigger a heap dump like System.gc() triggers garbage collection? And if the code hits the trigger repeatedly do you wind up with several unique snapshots (presumably timedatestamped) or would the trigger write over the previous dump?