swagger 父子工程 Cannot convert undefined or null to object(或者swagger打不开)

swagger 父子工程 Cannot convert undefined or null to object(或者swagger打不开)

根本原因:启动类无法扫描到配置文件和controller

解决:

排除:

  1. 是否添加了扫描controller的包

在这里插入图片描述

 @Bean
    public Docket createRestApi() {
        return new Docket(DocumentationType.SWAGGER_2)
//                .enable(swaggerProperties.getEnabled())
//                .host(swaggerProperties.getHost())
                .apiInfo(apiInfo())//调用apiInfo方法,创建一个ApiInfo实例,里面是展示在文档页面信息内容
                .select()
                //控制暴露出去的路径下的实例
                //如果某个接口不想暴露,可以使用以下注解
                //@ApiIgnore 这样,该接口就不会暴露在 swagger2 的页面下
                .apis(RequestHandlerSelectors.basePackage("top.lvxiaoyi.blogsystem.controller"))
                .paths(Predicates.not(PathSelectors.regex("/error.*")))
                .build();
    }
    //构建 api文档的详细信息函数
    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                //页面标题
                .title("api测试")
                .version("1.0")
                //描述
                .description("吕小医测试")
                .build();
    }
  1. 排查启动类中是否添加了扫描机制
    在这里插入图片描述

@springbootApplication中默认添加了@ComponentScan,如果你后来又进行了这样的的配置,默认覆盖上面,仅进行你的扫描,这样你的扫描如果写的太死造成有些没有包扫描到,就会造成swagger打不开或者没有controller信息

我的就是遇到这样的问题

@ComponentScan默认是扫描当前包以及子包,如果你没有配置则扫描所有启动类包下面的子包,即时不在同一个子工程中只要包名一样也会扫描到

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值