Spring 配置Swagger

swagger配置示例:其中,titile的内容会显示在swagger页面顶部,RequestHandlerSelectors.basePackage和PathSelectors.any从包结构和api路径两个方面筛选要显示的api接口

@Component
@EnableSwagger2
public class SwaggerConfig {


    @Bean
    public Docket api() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(new ApiInfoBuilder()
                        .title("title")
                        .build())
                .select()
                .apis(RequestHandlerSelectors.basePackage("BUSINESS_PATH"))
                .paths(PathSelectors.any())
                .build();
    }

}

  

@EnableSwagger2Doc 此注解会显示Spring内部的api。一般不使用此注解。

异常解决:

1、 

org.springframework.context.ApplicationContextException: Failed to start bean 'documentationPluginsBootstrapper'; nested exception is java.lang.IllegalStateException: Multiple Dockets with the same group name are not supported. The following duplicate groups were discovered. default

Caused by: java.lang.IllegalStateException: Multiple Dockets with the same group name are not supported. The following duplicate groups were discovered. default

at springfox.documentation.spring.web.plugins.DuplicateGroupsDetector.ensureNoDuplicateGroups(DuplicateGroupsDetector.java:45)

这个问题是Swagger配置重复定义,@EnableSwagger2Doc注解也会定义一个swagger,使用@EnableSwagger2Doc的同时再自定义swagger配置会产生此问题。

原文地址:https://www.cnblogs.com/afraidToForget/p/11466193.html