Cosmopolitan Libc is a very interesting library which makes it possible to make an executable independent of the OS (but not of the architecture which must be x86)
So I tried to compile Jainja JVM with this C library. It was pretty easy, apart from a few name collisions in headers.
There is now a JVM whose binary code works under Windows, Linux, xBSD and MacOS without recompilation !
Cosmopolitan libc focuses on text-based user interfaces but AWT/Swing should work through X11 / TCP (not tested yet).