Two command line flags explicitly specify when a class should be initialized: --initialize-at-build-time
and --initialize-at-run-time
.
You can use the flags to specify whole packages or individual classes.
For example, if you have the classes p.C1
, p.C2
, … ,p.Cn
, you can specify that all the classes in the package p
are initialized at build time by passing the following argument to native-image
on the command line:
--initialize-at-build-time=p
If you want only one of the classes in package p
to be initialized at runtime, use:
--initialize-at-run-time=p.C1
The whole class hierarchy can be initialized at build time by passing --initialize-at-build-time
on the command line.
Class initialization can also be specified programmatically using RuntimeClassInitialization
from the Native Image feature.