gpt4 book ai didi

java - 指定默认@Bean 而不使用@Primary Spring Boot

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:35:53 29 4
gpt4 key购买 nike

有一个像这样的bean:

@Bean
TemplateEngine myTemplateEngine() {...}

但是 Spring boot 也有一个用于 TemplateEngine 定义的 bean:

org/springframework/boot/autoconfigure/thymeleaf/ThymeleafAutoConfiguration$ThymeleafDefaultConfiguration.class

当我 Autowiring TemplateEngine 时,我得到了

"Field required a single bean, but 2 were found"

我希望 spring 引导 bean 成为默认 bean,并且仅在明确指定时才使用我的 bean,因此我无法使用 @Primary 注释,因为我无权访问该 bean 定义。

另外,我也想避免使用 xml 配置。

最佳答案

尝试将您的 bean 定义为

@Bean
@ConditionalOnMissingBean(TemplateEngine .class)
TemplateEngine myTemplateEngine() {...}

关于java - 指定默认@Bean 而不使用@Primary Spring Boot,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42676588/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com