Spring tells that it fails to create bean because a parameter bean is missing, but there is no such parameter in @Bean method

Viewed 32

I try to run a SpringBoot application and see an error:

Parameter 1 of method methodName in com.example.app.config.ConfigClassName required a bean named 'beanName1' that could not be found.

This is how this bean declaration looks like

    @Bean
    CustomRedisSubscriber methodName(BeanName2 beanName2, BeanName3 beanName3,
                                    BeanName4 beanName4)
    {
        return new CustomRedisSubscriber(beanName2, beanName3, beanName4);
    }

I mean this @Bean method doesn't have any parameter that looks like "beanName1". Class BeanName1 and @Bean method that creates bean of BeanName1 class were deleted from source code.

I rebased to the previous version where class BeanName1 existed and bean with name "beanName1" was declared and checked @Bean CustomRedisSubscriber methodName in debug mode - there was no parameter with the name "beanName1" available in the method methodName.

The funniest thing is that when I created a bean declaration with type String and named "beanName1" the error disappeared.

    @Bean
    String beanName1() {
        return "This is beanName1String";
    }

Any ideas why it may happen? Thanks.

0 Answers
Related