Class JPMSClassLoaderHandler

  • All Implemented Interfaces:
    ClassLoaderHandler

    class JPMSClassLoaderHandler
    extends java.lang.Object
    implements ClassLoaderHandler
    A placeloader ClassLoaderHandler that matches Java 9+ classloaders, but does not attempt to extract URLs from them (module scanning uses a different mechanism from classpath scanning).
    • Constructor Detail

      • JPMSClassLoaderHandler

        private JPMSClassLoaderHandler()
        Class cannot be constructed.
    • Method Detail

      • canHandle

        public static boolean canHandle​(java.lang.Class<?> classLoaderClass,
                                        LogNode log)
        Check whether this ClassLoaderHandler can handle a given ClassLoader.
        Parameters:
        classLoaderClass - the ClassLoader class or one of its superclasses.
        log - the log
        Returns:
        true if this ClassLoaderHandler can handle the ClassLoader.
      • findClassLoaderOrder

        public static void findClassLoaderOrder​(java.lang.ClassLoader classLoader,
                                                ClassLoaderOrder classLoaderOrder,
                                                LogNode log)
        Find the ClassLoader delegation order for a ClassLoader.
        Parameters:
        classLoader - the ClassLoader to find the order for.
        classLoaderOrder - a ClassLoaderOrder object to update.
        log - the log
      • findClasspathOrder

        public static void findClasspathOrder​(java.lang.ClassLoader classLoader,
                                              ClasspathOrder classpathOrder,
                                              ScanSpec scanSpec,
                                              LogNode log)
        Find the classpath entries for the associated ClassLoader.
        Parameters:
        classLoader - the ClassLoader to find the classpath entries order for.
        classpathOrder - a ClasspathOrder object to update.
        scanSpec - the ScanSpec.
        log - the log.