CommandLineRunner的Spring自动装配问题

时间:2018-10-11 14:05:04

标签: java spring spring-boot autowired

出于好奇,我有以下问题,我有一个使用commnad line运行程序运行的spring boot应用程序,运动消费者将在其中运行:

        @SpringBootApplication
        public class FleetMessagingKCLApplication  implements CommandLineRunner{

            //Command line runner
            @Override
            public void run(String... args) throws Exception {
                kinesisconsumers.startConsumers();

            }   
        }

我在MAIN类中有一个服务定位器bean(如下所述),该接口具有用于工厂模式实现的接口Processor Factory:

        @Bean
        public ServiceLocatorFactoryBean serviceLocatorForMessageTransformation() {  
                ServiceLocatorFactoryBean slfb = new ServiceLocatorFactoryBean();
                slfb.setServiceLocatorInterface(ProcessorFactory.class);
                return slfb;
            }

但是不能自动连接任何类中的ProcessFactory,但是在将服务定位器bean移到用Component声明的另一个Java类中之后,自动装配按预期工作。

某事与我无法自动接线的使用命令行运行程序有关吗?

0 个答案:

没有答案