/spring-native

Spring Native is now superseded by Spring Boot 3 official native support

Primary LanguageJavaApache License 2.0Apache-2.0

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

In order to adapt to the permissions changes on https://repo.spring.io/release/, Spring Native artifacts are now available from https://repo.spring.io/milestone/, 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 start.spring.io, 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

Note
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 ./build.sh 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.

Contributing

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.

License