private static Collection<URLClassLoader> getClassLoaders(ClassLoader baseClassLoader) {
        Collection<URLClassLoader> loaders = new ArrayList<URLClassLoader>(8);
        ClassLoader loader = baseClassLoader;
        while (loader != null) {
            if ("sun.misc.Launcher$ExtClassLoader".equals(loader.getClass().getName())) {
                break;
            }
            if (loader instanceof URLClassLoader) {
                loaders.add((URLClassLoader) loader);
            }
            loader = loader.getParent();
        }
        return loaders;
    }
private static Collection<URLClassLoader> getClassLoaders(ClassLoader baseClassLoader) {
        Collection<URLClassLoader> loaders = new ArrayList<URLClassLoader>(8);
        ClassLoader loader = baseClassLoader;
        while (loader != null) {
            if ("sun.misc.Launcher$ExtClassLoader".equals(loader.getClass().getName())) {
                break;
            }
            if (loader instanceof URLClassLoader) {
                loaders.add((URLClassLoader) loader);
            }
            loader = loader.getParent();
        }
        return loaders;
    }
private static Collection < URLClassLoader > getClassLoaders ( ClassLoader baseClassLoader ) { Collection < URLClassLoader > loaders = new ArrayList < URLClassLoader > ( 8 ) ; ClassLoader loader = baseClassLoader ; while ( loader != null ) { if ( "sun.misc.Launcher$ExtClassLoader" . equals ( loader . getClass ( ) . getName ( ) ) ) { break ; } if ( loader instanceof URLClassLoader ) { loaders . add ( ( URLClassLoader ) loader ) ; } loader = loader . getParent ( ) ; } return loaders ; }
根据 baseClassLoader 找到所有的祖先 URLClassLoader (包括自己)
根据 baseClassLoader 找到所有的祖先 URLClassLoader ( 包括自己 )