Class NativeImageUtils


  • @InternalApi
    public class NativeImageUtils
    extends java.lang.Object
    Internal class offering helper methods for registering methods/classes for reflection.
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static java.lang.reflect.Method getMethodOrFail​(java.lang.Class<?> clazz, java.lang.String methodName, java.lang.Class<?>... params)
      Returns the method of a class or fails if it is not present.
      static void registerClassForReflection​(org.graalvm.nativeimage.hosted.Feature.FeatureAccess access, java.lang.String name)
      Registers an entire class for reflection use.
      static void registerClassHierarchyForReflection​(org.graalvm.nativeimage.hosted.Feature.FeatureAccess access, java.lang.String className)
      Registers the transitive class hierarchy of the provided className for reflection.
      static void registerConstructorsForReflection​(org.graalvm.nativeimage.hosted.Feature.FeatureAccess access, java.lang.String name)
      Registers all constructors of a class for reflection.
      static void registerForReflectiveInstantiation​(org.graalvm.nativeimage.hosted.Feature.FeatureAccess access, java.lang.String className)
      Registers a class for reflective construction via its default constructor.
      static void registerForUnsafeFieldAccess​(org.graalvm.nativeimage.hosted.Feature.FeatureAccess access, java.lang.String className, java.lang.String... fields)
      Registers a class for unsafe reflective field access.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • getMethodOrFail

        public static java.lang.reflect.Method getMethodOrFail​(java.lang.Class<?> clazz,
                                                               java.lang.String methodName,
                                                               java.lang.Class<?>... params)
        Returns the method of a class or fails if it is not present.
      • registerForReflectiveInstantiation

        public static void registerForReflectiveInstantiation​(org.graalvm.nativeimage.hosted.Feature.FeatureAccess access,
                                                              java.lang.String className)
        Registers a class for reflective construction via its default constructor.
      • registerConstructorsForReflection

        public static void registerConstructorsForReflection​(org.graalvm.nativeimage.hosted.Feature.FeatureAccess access,
                                                             java.lang.String name)
        Registers all constructors of a class for reflection.
      • registerClassForReflection

        public static void registerClassForReflection​(org.graalvm.nativeimage.hosted.Feature.FeatureAccess access,
                                                      java.lang.String name)
        Registers an entire class for reflection use.
      • registerClassHierarchyForReflection

        public static void registerClassHierarchyForReflection​(org.graalvm.nativeimage.hosted.Feature.FeatureAccess access,
                                                               java.lang.String className)
        Registers the transitive class hierarchy of the provided className for reflection.

        The transitive class hierarchy contains the class itself and its transitive set of *non-private* nested subclasses.

      • registerForUnsafeFieldAccess

        public static void registerForUnsafeFieldAccess​(org.graalvm.nativeimage.hosted.Feature.FeatureAccess access,
                                                        java.lang.String className,
                                                        java.lang.String... fields)
        Registers a class for unsafe reflective field access.