Guides
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 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