SpringBoot 設定SwaggerUI 存取404的小坑。
在學習SpringBoot建立Restful API的時候遇到了一個小坑,配置Swagger UI的時候無法存取。
首先在自己的pom檔案中加入Swagger的依賴,如下所示:
<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.2.2</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.2.2</version> </dependency>
然後在新建一個SwaggerConfig類別:
Configuration @EnableSwagger2 public class SwaggerConfig { @Bean public Docket createRestApi() { return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()) .select() .apis(RequestHandlerSelectors.basePackage("com.nightowl")) .paths(PathSelectors.any()) .build(); } private ApiInfo apiInfo() { return new ApiInfoBuilder() .title("NightOwl RESTful APIs") .description("关注我 http://hwangfantasy.github.io/") .termsOfServiceUrl("http://hwangfantasy.github.io/") .contact("颜艺学长") .version("1.0") .build(); } }
最後在自己的Controller中加上一連串的API註解即可,其實不需要加上API註解也可以正常使用。
最後在localhost:8080/swagger-ui.html 造訪即可看到swagger頁面了。
但是關鍵來了,我第一次按照這樣的方法配置卻提示如下錯誤:
Whitelabel Error Page This application has no explicit mapping for /error, so you are seeing this as a fallback. Thu Nov 24 19:57:13 CST 2016 There was an unexpected error (type=Not Found, status=404). No message available
但是我新建一個專案重新配置卻沒有任何問題,於是想到自己的專案中一定有哪些設定與swagger衝突了,
最後發現在application.properties 中把
spring.resources.static-locations=classpath:/static/
這一行註解掉即可存取了。
以上是SpringBoot設定SwaggerUI存取404錯誤怎麼解決的詳細內容。更多資訊請關注PHP中文網其他相關文章!