code: static Reflections createReflections(ClassLoader classLoader, String packagePrefix) {
  
          // We set up reflections to use the classLoader for loading classes
          // and also to use the classLoader to determine the list of URLs:
          ConfigurationBuilder configurationBuilder = new ConfigurationBuilder().addClassLoader(classLoader);
          if (StringUtils.isNotBlank(packagePrefix)) {
              configurationBuilder.addUrls(ClasspathHelper.forPackage(packagePrefix, classLoader));
          } else {
              configurationBuilder.addUrls(ClasspathHelper.forClassLoader(classLoader));
          }
          Reflections reflections = new Reflections(configurationBuilder);
  
          log.info("Reflections URLs: {}", reflections.getConfiguration().getUrls());
          if (Main.configuration.classesReloadable && reflections.getConfiguration().getUrls().size() == 0 && StringUtils.isNotEmpty(Main.configuration.packagePrefix)) {
              log.info("It looks like no reloadable classes were found. Is '{}' the correct package prefix for your app?", Main.configuration.packagePrefix);
          }
          return reflections;
      }
docs: Builds a {@link Reflections} instance that will scan for classes in, and
  load them from, the given class loader.
  
  @param classLoader The class loader to scan and load from.
  @return A new {@link Reflections} instance.