GraalVM Native Image Support

GraalVM Native Images are standalone executables that can be generated by processing compiled Java applications ahead-of-time. Native Images generally have a smaller memory footprint and start faster than their JVM counterparts.

Support

The required AOT Runtime Hints are built-in to Apache Pulsar support for Spring so that it can seamlessly be used in native image based Spring applications.

Native image support in Apache Pulsar support for Spring has been tested in basic scenarios, and we expect it to "just work". However, it is possible that more advanced use cases could surface the need to add additional runtime hints to your own application. If this occurs please file a Github issue with some details.

Next Steps

If you are interested in adding native image support to your own application then an excellent place to start is the Spring Boot GraalVM Support section of the Spring Boot reference docs.

Although that guide does not cover Apache Pulsar support for Spring, the Spring AOT smoke tests have an example for Spring for Apache Pulsar, the predecessor of this project.