Skip to content

springdoc openapi 2.x migration guide

bnasslahsen edited this page Jan 26, 2022 · 15 revisions

What's new?

  • Support for Jakarta EE
  • Support Spring-Boot 3

Requirements

  • Java 17

Modules changes

  • All the modules have been renmaed
  • springdoc-openapi-starter-common integrates many spring modules support in order to hide the maximum of complexity.
  • It allows out of the box, the support of: Actuator / Spring Cloud Function / Spring Data Rest/ Spring Native/ Spring Hateoas / Spring Securtiy / Kotlin/ Javadoc

The following table describes the main modules changes:

springdoc-openapi-v1 springdoc-openapi-v2 Description
springdoc-openapi-common springdoc-openapi-starter-common Includes foundation springdoc-openapi features
springdoc-openapi-data-rest springdoc-openapi-starter-common For Spring Data Rest support
springdoc-openapi-groovy springdoc-openapi-starter-common For Groovy support
springdoc-openapi-hateoas springdoc-openapi-starter-common For Spring Hateoas support
springdoc-openapi-javadoc springdoc-openapi-starter-common For Javadoc support
springdoc-openapi-kotlin springdoc-openapi-starter-common For Kotlin support
springdoc-openapi-native springdoc-openapi-starter-common For Spring Native support
springdoc-openapi-security springdoc-openapi-starter-common For Spring Security support
springdoc-openapi-webmvc-core springdoc-openapi-starter-webmvc-api For Spring WebMvc support
springdoc-openapi-webflux-core springdoc-openapi-starter-webflux-api For Spring WebFlux support
springdoc-openapi-ui springdoc-openapi-starter-webmvc-ui For using the Swagger-UI in a Spring WebMvc context
springdoc-openapi-webflux-ui springdoc-openapi-starter-webflux-ui For using the Swagger-UI in a Spring WebFlux context

Important classes/annotations changes

springdoc-openapi-v1 springdoc-openapi-v2
infos General metadata for an OpenAPI definition
infos Info metadata for an OpenAPI definition
infos Properties to describe the contact person for an OpenAPI definition
infos Properties to describe the license for an OpenAPI definition

TIPs for the migration:

The following modules are not anymore needed and can be removed:

  • springdoc-openapi-data-rest
  • springdoc-openapi-security
  • springdoc-openapi-webmvc-core
  • springdoc-openapi-webflux-core
  • springdoc-openapi-hateoas
  • springdoc-openapi-security Replace springdoc-openapi-ui by springdoc-openapi-starter-webmvc-ui Replace springdoc-openapi-webflux-ui by springdoc-openapi-starter-webflux-ui

Known limitations:

spring-native is not yet supported for Java 17 and compatibility with spring-boot 3.0.0-M1.

Clone this wiki locally