Failed to process import candidates for configuration class [springfox.documentation.swagger2.configuration.Swagger2DocumentationConfiguration]

 

org.springframework.beans.factory.BeanDefinitionStoreException: Failed to process import candidates for configuration class [springfox.documentation.swagger2.configuration.Swagger2DocumentationConfiguration]; nested exception is java.lang.IllegalArgumentException: Unresolvable class definition for class [springfox.documentation.spring.web.OnServletBasedWebApplication]

 

解决:

https://stackoverflow.com/questions/72870322/failed-to-process-import-candidates-for-configuration-class-springfox-documenta

 

nested exception is org.springframework.context.annotation.ConflictingBeanDefinitionException: Annotation-specified bean name

 

根据bean名称在ide中查找,找到这两个重名的类,可以看到由于这两个类使用@Service标注,此时如果不使用命名,那么Spring会在扫描时,将类名首字母小写作为key,放到一个全局Map中维护。此时,会出现两个键相同的Service,由于Spring不使用覆盖的方式处理具有相同键的不同全类名,所以扫描时提示冲突。

 

https://www.cnblogs.com/zjfjava/p/11654606.html

 
https://copyprogramming.com/howto/annotation-specified-bean-name-conflicts-with-existing-non-compatible-bean-def 
 
另一种结局方案
springboot启动类上:
@ComponentScan( excludeFilters = @ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE, classes = {xxClass.class}))


然后自定义一个bean的配置类

@Configuration
public class AutoConfig {

    @Bean
    public A anotherA() {
        return new A();
    }
}

 

https://blog.51cto.com/u_13981400/2366121

The BeanDefinitionOverrideException in Spring Boot

https://www.baeldung.com/spring-boot-bean-definition-override-exception

spring.main.allow-bean-definition-overriding=true

posted @   parkdifferent  阅读(3105)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
点击右上角即可分享
微信分享提示