code: public static void findAndRegister(MessagingBuilder builder, String builderName, String... basePackages) {
  		Reflections reflections = new Reflections(basePackages, new SubTypesScanner());
  		Set<Class<? extends MessagingConfigurer>> configurerClasses = reflections.getSubTypesOf(MessagingConfigurer.class);
  		for (Class<? extends MessagingConfigurer> configurerClass : configurerClasses) {
  			ConfigurerFor annotation = configurerClass.getAnnotation(ConfigurerFor.class);
  			if (annotation != null && asList(annotation.targetedBuilder()).contains(builderName)) {
  				try {
  					builder.register(configurerClass.newInstance(), annotation.priority());
  				} catch (InstantiationException | IllegalAccessException e) {
  					LOG.error("Failed to register custom auto-discovered configurer (" + configurerClass.getSimpleName() + ") for standard messaging builder", e);
  					throw new BuildException("Failed to register custom auto-discovered configurer (" + configurerClass.getSimpleName() + ") for standard messaging builder", e);
  				}
  			}
  		}
  	}
docs: You can use this method if {@link #standard()} and {@link #minimal()}
  factory methods doesn't fit your needs. The aim is to auto-configure a
  builder with matching configurers.
  
  Utility method that searches all {@link MessagingConfigurer}s that are in
  the classpath. Only configurers that are in the provided packages (and
  sub-packages) are loaded.
  
  Once configurers are found, they are filtered thanks to information
  provided by {@link ConfigurerFor} annotation. Only configurers with
  {@link ConfigurerFor#targetedBuilder()} value that matches the
  builderName parameter are kept.
  
  The found and filtered configurers are registered into the provided
  builder instance.
  
  @param builder
  the builder to configure with matching configurers
  @param builderName
  the name that is referenced by
  {@link ConfigurerFor#targetedBuilder()}
  @param basePackages
  the packages that are scanned to find
  {@link MessagingConfigurer} implementations