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配置会产生此问题。