have a bean like this:
@Bean
TemplateEngine myTemplateEngine() {...}
But Spring boot also has a bean for TemplateEngine defined in:
org/springframework/boot/autoconfigure/thymeleaf/ThymeleafAutoConfiguration$ThymeleafDefaultConfiguration.class
When I autowire TemplateEngine I get
"Field required a single bean, but 2 were found"
I want the spring boot bean to be the default one and only use my bean if explicity specified, so I couldn't use @Primary annotation because I don't have access to that bean definition.
Also, I would like to avoid using xml configuration as well.
Try to define your bean as
@Bean
@ConditionalOnMissingBean(TemplateEngine .class)
TemplateEngine myTemplateEngine() {...}