springboot中依赖包中的@ConditionalOnMissingBean不生效,如何解决?
父模块
@Configuration
public class WebConfig {
}
依赖包
@ConditionalOnMissingBean(name = "webConfig")
@Configuration
public class WebConfig {
}
启动报错
aused by: org.springframework.context.annotation.ConflictingBeanDefinitionException: Annotation-specified bean name 'webConfig' for bean class [cn.xxx.WebConfig] conflicts with existing, non-compatible bean definition of same name and class [cn.xxx.WebConfig]
分析
依赖包中的WebConfig先被扫描了出来,此时进行Conditional条件检测,发现不存在,则被实例化,后面再实例化父模块的WebConfig时就冲突了
我给依赖包的WebConfig加了Order,发现也不生效,求大佬指教~~
@Order(Ordered.LOWEST_PRECEDENCE - 1)
@ConditionalOnMissingBean(name = "webConfig")
@Configuration
public class WebConfig {
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
@ConditionalOnMissingBean(WebConfig.class) 值明你不想实例化类的类路径