Hi, I'm pretty sure setOnAction is holding references.
I have a "Open Windows" menu on my application where it lists the Stages opened and if you click, it calls stage.toFront(): menuItem.seOnAction(e -> stage.toFront()) I had many crash reports, all OOM. I got the hprof files and analyzed them - turns out this was holding references to all closed stages. To fix it, I call setOnAction(null) when the stage is closed. I will investigate further and provide an example. -- Thiago.