Pom 中 Swagger部分
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.6.1</version>
</dependency>
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>swagger-bootstrap-ui</artifactId>
<version>1.9.6</version>
</dependency>
Swagger配置如下
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
.paths(PathSelectors.any())
.apis(RequestHandlerSelectors.basePackage("com.yueqin.controller")) //只扫描controller路径下的api
.build();
}
private ApiInfo apiInfo() {
// TODO Auto-generated method stub
Contact contact = new Contact("yueqin", "http://localhost:8080/SpringTest", "yueqin.huang@ncsi.com.cn");
return new ApiInfoBuilder()
.contact(contact)
.description("This is My Spring Demo Application")
.termsOfServiceUrl("http://localhost:8080/SpringTest")
.title("Spring Demo")
.version("V1.0")
.build();
}
}
访问url, http://localhost:8080/SpringTest/doc.html,界面空白。
浏览器前台报错如下
猜想/v2/api-docs-ext不是自己定义的,所以是swagger jar包内的,于是找到了EnableSwaggerBootstrapUi注解以及SwaggerBootstrapUiController。
查看EnableSwaggerBootstrapUI注解和 SwaggerBootstrapUiController,我们可以发现EnableSwaggerBootstrapUI注解引入了SwaggerBootstrapUiController。
最终我们在SwaggerConfig加上注解EnableSwaggerBootstrapUI,如以下高亮所示,问题得以解决。