code: public Map<Class<?>, Set<Class<?>>> loadVetoed(ClassLoader classLoader) {
  
          Validate.notNull(classLoader, "ClassLoader must be provided");
  
          final Map<Class<?>, Set<Class<?>>> vetoed = new LinkedHashMap<Class<?>, Set<Class<?>>>();
  
          try {
              final Enumeration<URL> exclusions = classLoader.getResources(EXCLUSIONS);
  
              while (exclusions.hasMoreElements()) {
                  URL exclusion = exclusions.nextElement();
                  Properties vetoedElements = new Properties();
                  final InputStream inStream = exclusion.openStream();
  
                  try {
                      vetoedElements.load(inStream);
  
                      final Set<Map.Entry<Object, Object>> entries = vetoedElements.entrySet();
  
                      for (Map.Entry<Object, Object> entry : entries) {
                          String service = (String) entry.getKey();
                          String serviceImpls = (String) entry.getValue();
  
                          addVetoedClasses(service, serviceImpls, classLoader, vetoed);
                      }
                  } finally {
                      if (inStream != null) {
                          inStream.close();
                      }
                  }
              }
          } catch (IOException e) {
              throw new RuntimeException("Could not load exclusions from " + EXCLUSIONS, e);
          }
  
          return vetoed;
      }
docs: This method first finds all files that are in claspath placed at META-INF/exclusions
  Each of this file has a name that represents the service type that needs to veto.
  The content of this file is a list of real implementations that you want to veto.
  
  @return List of vetos