Re:OpenJDK Proposes Project Galahad to Merge GraalVM Native ...
by anentropic on Wednesday December 21, 2022 @10:53PM
(#34089580)
I'm actually wanting to do this with Graal at the moment ("using GitHub Actions to produce platform-specific binaries")
As far as I can tell Graal does not have cross-compilation ability currently (there is an open issue here: https://github.com/oracle/graal/issues/407)
To my knowledge, cross-compiling "native" Linux and Windows binaries using Java requires duct tape, chewing gum, and warp-packer.[1][2] If there's another way to cross-compile a Java application into a standalone binary for multiple target platforms, do tell!
GraalVM isn't a panacea. For example, GraalVM cannot compile Renjin[3], a pure Java R interpreter, which means switching from Renjin to FastR. Not trivial. Other sinkholes likely lurk that'll only reveal themselves when walking through the weeds.
[0]: https://github.com/DaveJarvis/keenwrite
[1]: https://dave.autonoma.ca/blog/2020/06/29/write-once-build-an...
[2]: https://github.com/dgiagio/warp
[3]: https://github.com/bedatadriven/renjin/issues/564