@Override public void beforeFindComponents() { super.beforeFindComponents(); componentFinderStrategies.add(new SpringRestControllerComponentFinderStrategy()); componentFinderStrategies.add(new SpringMvcControllerComponentFinderStrategy()); componentFinderStrategies.add(new SpringServiceComponentFinderStrategy()); componentFinderStrategies.add(new SpringComponentComponentFinderStrategy()); componentFinderStrategies.add(new SpringRepositoryComponentFinderStrategy()); for (AbstractSpringComponentFinderStrategy componentFinderStrategy : componentFinderStrategies) { componentFinderStrategy.setIncludePublicTypesOnly(includePublicTypesOnly); componentFinderStrategy.setComponentFinder(getComponentFinder()); supportingTypesStrategies.forEach(componentFinderStrategy::addSupportingTypesStrategy); componentFinderStrategy.setDuplicateComponentStrategy(getDuplicateComponentStrategy()); componentFinderStrategy.beforeFindComponents(); } }