springfox swagger-ui 3.0.0 버전 적용법
2021. 1. 9. 21:16
springfox swagger-ui 2.9.2 버전까지는 이렇게 디펜던시를 추가하고
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.9.2</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.9.2</version>
</dependency>
Configuration 컴포넌트에서 Docket 클래스를 Bean 등록을 해주고
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(this.apiInfo())
.select()
.apis(RequestHandlerSelectors.any())
.paths(PathSelectors.any())
.build();
}
}
localhost:8080/swagger-ui.html url을 통해서 접근 가능했다.
springfox swagger-ui 3.0.0 버전부터는 다르다.
디펜던시를 swagger2와 swagger-ui가 아니라 이것으로 등록해주어야 한다.
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
<version>3.0.0</version>
</dependency>
이후 Bean 등록까진 동일하다.
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(this.apiInfo())
.select()
.apis(RequestHandlerSelectors.any())
.paths(PathSelectors.any())
.build();
}
}
그리고 swagger-ui에 접근하는 url이 달라졌다.
localhost:8080/swagger-ui/index.html 접속하면 된다.
추측되는 이유는 3버전부터는 swagger-ui와 swagger2 디펜던시뿐만 아니라 다른 코드가 추가되었고
springfox-boot-starter에서 위의 swagger-ui와 swagger2 디펜던시를 포함해서 새롭게 만들어져서 문제가 되었던 것이다.
'Java > Spring boot' 카테고리의 다른 글
Gradle로 Github Action에 Coveralls 적용 방법 (0) | 2021.01.31 |
---|---|
Test Code (0) | 2021.01.31 |