code: @SuppressWarnings("unchecked")
  	public static Iterator<Class<?>> getClassIterator(ClassLoader classLoader) throws NoSuchFieldException, IllegalAccessException {
  		Class<?> classLoaderClass = classLoader.getClass();
  		while (classLoaderClass != ClassLoader.class) {
  			classLoaderClass = classLoaderClass.getSuperclass();
  		}
  		Field classesField = classLoaderClass.getDeclaredField("classes");
  		classesField.setAccessible(true);
  		Vector<Class<?>> classes = (Vector<Class<?>>) classesField.get(classLoader);
  		return classes.iterator();
  	}
docs: Get an iterator of all classes loaded by the specific classloader.
  
  @param classLoader  the class loader for that iterator with all loaded classes should be created.
  @return the iterator with all classes loaded by the given {@code classLoader}
  @throws NoSuchFieldException
  @throws IllegalAccessException