我正在尝试让 Swagger UI 与 Spring Boot 1.2.1 一起使用。我按照 https://github.com/martypitt/swagger-springmvc 上的说明进行操作,并在我的 spring 配置中添加了 @EnableSwagger
。
当我转到 http://localhost:8080/api-docs
时,我目前返回 JSON,但没有好的 HTML。
我正在使用 Maven 并添加了对 swagger-ui 的依赖:
<dependency>
<groupId>org.ajar</groupId>
<artifactId>swagger-spring-mvc-ui</artifactId>
<version>0.4</version>
</dependency>
这是我的完整依赖项列表:
<dependencies>
<dependency>
<groupId>com.mangofactory</groupId>
<artifactId>swagger-springmvc</artifactId>
<version>0.9.4</version>
</dependency>
<dependency>
<groupId>org.ajar</groupId>
<artifactId>swagger-spring-mvc-ui</artifactId>
<version>0.4</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-websocket</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
我也试过 http://localhost:8080/docs/index.html
作为 URL,但这只是给出了“Whitelabel 错误页面”
更新:
我在 Github 上创建了一个测试项目来显示问题: https ://github.com/wimdeblauwe/springboot-swagger-test
原文由 Wim Deblauwe 发布,翻译遵循 CC BY-SA 4.0 许可协议
您的问题在于您的
SwaggerConfiguration
文件。您需要取出@EnableWebMvc
,因为这会导致默认的 Spring Boot 视图解析器被默认的“SpringWebMvc”覆盖,该解析器提供不同的静态内容。默认情况下,Spring Boot 将从以下任何目录提供静态内容:
包括 webjars。
我遇到了同样的问题,我在文档中找到了这个:http: //docs.spring.io/spring-boot/docs/current/reference/html/boot-features-developing-web-applications.html#boot-features -spring-mvc-自动配置
我希望这有帮助。