package com.starcharge.config; import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import com.github.xiaoymin.knife4j.spring.annotations.EnableKnife4j; import springfox.documentation.builders.ApiInfoBuilder; import springfox.documentation.builders.PathSelectors; import springfox.documentation.builders.RequestHandlerSelectors; import springfox.documentation.service.ApiInfo; import springfox.documentation.spi.DocumentationType; import springfox.documentation.spring.web.plugins.Docket; import springfox.documentation.swagger2.annotations.EnableSwagger2; @Configuration @EnableSwagger2 @EnableKnife4j @ConditionalOnExpression("!'${spring.profiles.active}'.equals('prod')") public class SwaggerConfig { @Bean public Docket createDocket() { return new Docket(DocumentationType.SWAGGER_2).apiInfo(buildApiInfo()).select() .apis(RequestHandlerSelectors.basePackage("com.starcharge.wios")).paths(PathSelectors.ant("/api/**")).build() .groupName("wios后台接口"); } @Bean public Docket web_api_prdt() { return new Docket(DocumentationType.SWAGGER_2).apiInfo(buildApiInfo()).select().apis(RequestHandlerSelectors.any()) .paths(PathSelectors.ant("/api2/**")).build().groupName("app接口").pathMapping("/"); } @Bean public Docket minaApi() { return new Docket(DocumentationType.SWAGGER_2).apiInfo(buildApiInfo()).select().apis(RequestHandlerSelectors.any()) .paths(PathSelectors.ant("/mina/**")).build().groupName("微信小程序接口").pathMapping("/"); } @Bean public Docket wxApi() { return new Docket(DocumentationType.SWAGGER_2).apiInfo(buildApiInfo()).select().apis(RequestHandlerSelectors.any()) .paths(PathSelectors.ant("/wx/**")).build().groupName("微信公众号接口").pathMapping("/"); } private ApiInfo buildApiInfo() { return new ApiInfoBuilder().version("v1.0.0").description("wios接口定义").title("wios API").build(); } }