GCJ died the day Sun started the open source project for Java, and most devs left the project around 2009.
The only major use case I am aware of was Red-Hat shipping Eclipse AOT compiled.
There have been several AOT compilers for Java since the 2000's, but they were mostly ignored by the community due to the high prices, or special use cases like embedded development. Of those commercial offerings, PTC and Aicas are the surviving ones.
GraalVM is the evolution of MaximeVM, a Sun Research Labs project of selfhosting the whole Java implementation, which Oracle despite all the usual criticism, decided to support and turn into a product.
The other free beer AOT compiler is OpenJ9, which was originally developed by IBM, also for embedded development originally.
Then there is ART, which isn't really a JVM proper, but also does AOT.
There's also the OpenJDK CraC project (coordinated checkpoint and restore) which isn't a native AOT compiler as such but which also delivers faster starting applications by starting a service and storing the entire JVM state including compiled code.
Comments
IIRC, GCC used to have an AOT compiler for Java but I've never heard of anyone using that. Is Graal like another attempt to native Java binaries?
GCJ died the day Sun started the open source project for Java, and most devs left the project around 2009.
The only major use case I am aware of was Red-Hat shipping Eclipse AOT compiled.
There have been several AOT compilers for Java since the 2000's, but they were mostly ignored by the community due to the high prices, or special use cases like embedded development. Of those commercial offerings, PTC and Aicas are the surviving ones.
GraalVM is the evolution of MaximeVM, a Sun Research Labs project of selfhosting the whole Java implementation, which Oracle despite all the usual criticism, decided to support and turn into a product.
The other free beer AOT compiler is OpenJ9, which was originally developed by IBM, also for embedded development originally.
Then there is ART, which isn't really a JVM proper, but also does AOT.
There's also the OpenJDK CraC project (coordinated checkpoint and restore) which isn't a native AOT compiler as such but which also delivers faster starting applications by starting a service and storing the entire JVM state including compiled code.