
Native Image can be added to GraalVM with the GraalVM Updater tool. Native Image for GraalVM Enterprise Edition is available as an Early Adopter feature.Įarly Adopter features are subject to ongoing development, testing, and modification.įor more information, check the Oracle Technology Network License Agreement for GraalVM Enterprise Edition. Native Image for GraalVM Community Edition is licensed under the GPL 2 with Classpath Exception. The Native Image technology is distributed as a separate installable to GraalVM.
#COMPILING JAVA PROGRAM IN LINUX HOW TO#
#COMPILING JAVA PROGRAM IN LINUX CODE#
This entire process is called building an image (or the image build time) to clearly distinguish it from the compilation of Java source code to bytecode. Then it ahead-of-time compiles that reachable code and data to a native executable for a specific operating system and architecture. It statically analyzes these data to determine which classes and methods are reachable during the application execution. The Native Image builder or native-image is a utility that processes all classes of an application and their dependencies, including those from the JDK.

The resulting program has faster startup time and lower runtime memory overhead compared to a JVM.

Substrate VM is the name for the runtime components (like the deoptimizer, garbage collector, thread scheduling etc.). It does not run on the Java VM, but includes necessary components like memory management, thread scheduling, and so on from a different runtime system, called “Substrate VM”. This executable includes the application classes, classes from its dependencies, runtime library classes, and statically linked native code from JDK. Native Image is a technology to ahead-of-time compile Java code to a standalone executable, called a native image.
