How to native debug Java on macOS?

Kirk Pepperdine kirk.pepperdine at
Mon Sep 9 16:08:10 UTC 2019

Hi Alexander,

This is a very interesting question.  It seems as if you have some great tricks for debugging on Windows and Linux. Care to share?

Kind regards,
Kirk Pepperdine

> On Sep 9, 2019, at 9:04 AM, Alexander Miloslavskiy <alexandr.miloslavskiy at> wrote:
> Hello,
> For a while now, I've been working on solving native JVM crashes in a third party library with lots on JNI. Some turn out to be library bugs, some are JVM bugs, some are OS bugs. Anyways, that involves a lot of work with a native debugger, such as WinDBG / GDB / LLDB.
> Native-debugging JVM is harder then usual, because JVM raises lots of exceptions for internal purposes, and I have to skip them in my debugger. Eventually, I devised scripts for WinDBG (Windows) and GDB (Linux) to auto-skip those exceptions.
> However, on macOS, it seems that LLDB debugger is unable to pass EXC_BAD_ACCESS down to application and instead get stuck on it. I spent a while and managed to get GDB running on macOS, but ran into other difficulties where GDB is unable to load debugging information for system libraries. I also think that in general, GDB is not very feature-reach in terms of macOS specific stuff.
> I also tried to disable those internal exceptions in JVM, but it seems that it can't be done any easily.
> So... How do you guys native-debug on macOS?

More information about the hotspot-dev mailing list