Skip to content
This repository has been archived by the owner on Feb 23, 2023. It is now read-only.


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

spring-native is no longer actively maintained by VMware, Inc.

In order to adapt to the permissions changes on, Spring Native artifacts are now available from, Gradle and Maven build configuration of projects depending on Spring Native should be updated accordingly.

Spring Native provides beta support for compiling Spring applications to native executables using GraalVM native-image compiler, in order to provide a native deployment option typically designed to be packaged in lightweight containers.

Quick start

The easiest way to start with Spring Native is probably to go to, add the Spring Native dependency, and read the reference documentation. Make sure to configure properly the Spring AOT Maven and Gradle plugins that are mandatory to get proper native support for your Spring application.

Play with the samples

You need to install the GraalVM native-image compiler, check the documentation for more details.
  • Download the latest release of this repository.

  • Go into the samples folder and pick one (e.g. cd samples/commandlinerunner)

  • Run ./ which will run the regular JVM build, then a native image compilation, then test the result.

For more details on the samples see the samples documentation.


If you have not previously done so, please sign the Contributor License Agreement. You will be reminded automatically when you submit the pull request.

Contributions are welcome, especially for adding support via pull requests for libraries widely used in the Spring ecosystem not yet support. Please refer to the how to contribute section for more details.

This project requires Java 11.