Guides
April 27, 2026 ยท View on GitHub
These guides help developers get started with GraalVM Native Image, acquaint them with available features, and describe potential usage scenarios. Here you will learn how to:
- Access Environment Variables
- Add Logging to a Native Executable
- Build a Native Executable from a JAR File
- Build a Native Shared Library
- Build a Polyglot Native Executable (Java and JavaScript)
- Build a Static or Mostly-Static Native Executable
- Build and Run Native Executables with JFR
- Build and Run Native Executables with Remote JMX
- Build Java Modules into a Native Executable
- Configure Native Image with the Tracing Agent
- Containerize a Native Executable and Run in a Docker Container
- Create a Heap Dump from a Native Executable
- Debug Native Executables with GDB
- Debug Native Tests in Maven and Gradle Projects
- Debug Native Executables with a Python Helper Script
- Embed an SBOM in a Native Executable to Identify Its Dependencies
- Include Reachability Metadata Using the Native Image Gradle Plugin
- Include Reachability Metadata Using the Native Image Maven Plugin
- Include Resources in a Native Executable
- Optimize a Native Executable with Profile-Guided Optimization
- Optimize a Native Executable for File Size
- Optimize Size of a Native Executable using Build Reports
- Optimize Memory Footprint of a Native Executable
- Specify Class Initialization Explicitly
- Use Gradle to Build a Native Executable from a Java Application
- Use Maven to Build a Native Executable from a Java Application