Вне всякого сомнения, у меня есть следующий вопрос, у меня есть одно приложение весенней загрузки, работающее с использованием бегущей строки commnad, где будут работать потребители kinesis:
@SpringBootApplication
public class FleetMessagingKCLApplication implements CommandLineRunner{
//Command line runner
@Override
public void run(String... args) throws Exception {
kinesisconsumers.startConsumers();
}
}
У меня есть один компонент-локатор службы в классе MAIN (упомянутый ниже), имеющий интерфейс Processor Factory для реализации Factory Pattern:
@Bean
public ServiceLocatorFactoryBean serviceLocatorForMessageTransformation() {
ServiceLocatorFactoryBean slfb = new ServiceLocatorFactoryBean();
slfb.setServiceLocatorInterface(ProcessorFactory.class);
return slfb;
}
Но не удалось автоматически связать ProcessFactory ни в одном из классов, но после перемещения bean-компонента локатора службы в другой класс Java, объявленный с помощью ComponentАвтопроводка работала как положено.
Что-то было связано с использованием программы запуска командной строки, которую я не смог автоматически подключить?