code: private boolean needClassLoader(String procNames, Iterable<? extends File> workingpath) {
          if (procNames != null)
              return true;
  
          URL[] urls = new URL[1];
          for(File pathElement : workingpath) {
              try {
                  urls[0] = pathElement.toURI().toURL();
                  if (ServiceProxy.hasService(Processor.class, urls))
                      return true;
              } catch (MalformedURLException ex) {
                  throw new AssertionError(ex);
              }
              catch (ServiceProxy.ServiceConfigurationError e) {
                  log.error("proc.bad.config.file", e.getLocalizedMessage());
                  return true;
              }
          }
  
          return false;
      }
docs: /*
  Called retroactively to determine if a class loader was required,
  after we have failed to create one.