-
Notifications
You must be signed in to change notification settings - Fork 564
Native image
Helidon supports ahead of time compilation using GraalVM native image.
The following table shows support of native-image
in Helidon modules (all module names are prefixed with helidon-
).
Status:
β
- native-image
is supported and tested
π - native-image
should work, not part of regular tests (yet)
πΆ - native-image
works partially (description provided)
β³ - native-image
does not work (and we are working on it!)
π - native-image
does not work (and will not work for now)
Module | Description |
native-image status |
---|---|---|
webserver |
HTTP server | β |
media-jsonp-server |
JSON-P suppport | β |
media-jsonb-server |
JSON-B suppport | π |
media-jsonb-server |
Jackson suppport | π |
config |
Configuration | β |
config-yaml |
YAML file support | β |
config-object-mapping |
Object mapping support | π |
metrics |
Metric support | β |
health |
Health check support | β |
health-checks |
Health checks (built-in) | β |
tracing |
Tracing builder | π |
tracing-zipkin |
Zipkin tracing support | π |
tracing-jaeger |
Jaeger tracing support | π |
security |
Security | π |
security-providers-abac |
ABAC provider | π |
security-providers-http-auth |
HTTP Basic authentication provider | π |
security-providers-http-sign |
HTTP Signatures provider | π |
security-providers-oidc |
Open ID Connect provider | π |
org.glassfish.jersey.core:jersey-client |
Jersey HTTP Client *1 | πΆ |
org.glassfish.jersey.inject:jersey-hk2 |
Jersey HK2 *2 | πΆ |
security-integration-jersey-client |
Security propagation | π |
tracing-jersey-client |
Tracing propagation | π |
microprofile-server |
MicroProfile server | β³ |
*1: Jersey HTTP Client: Jersey core currently contains a dependency on "rendered image writer" - this depends on Image I/O. As a result, you can build such an image on an environment that supports Image I/O (such as a MacOS or a Linux distribution with X). Unfortunately this is not supported when building a native image within a Docker (as is one option in our quickstart example)
*2: Jersey HK2: This is required for the Jersey client to work. We have seen this working without issues, though there is quite a wide filter to include classes for reflection. This results in long image builds.