У меня есть существующий Spring REST API, для которого я хочу создать YAML-файл OpenAPI 3.0, а не Swagger 2.0 JSON / YAML?
Поскольку на данный момент SpringFox не поддерживает генерацию YAML.Он генерирует JSON с Swagger 2.0 (который соответствует спецификации OPEN API 3.0).
Кроме того, существует https://github.com/openapi-tools/swagger-maven-plugin, но он не поддерживает Spring Rest.
Я попробовалKongchen spring-maven-plugin, который может генерировать YAML-файл, но с определением Swagger 2.0, а не с OPEN API 3.0, например:
swagger: "2.0"
info:
description: "Test rest project"
version: "1.0"
title: "Some desc"
termsOfService: "http://swagger.io/terms/"
contact:
name: "Rest Support"
url: "http://www.swagger.io/support"
email: "support@swagger.io"
license:
name: "Apache 2.0"
url: "http://www.apache.org/licenses/LICENSE-2.0.html"
host: "example.com"
basePath: "/api/"
Поэтому мой вопрос заключается в том, как сгенерировать YAML-файл OPEN API, например:
openapi: 3.0.0
info:
description: Some desc
version: "1.0"
title: Test rest project
termsOfService: http://swagger.io/terms/
contact:
name: Rest Support
url: http://www.swagger.io/support
email: support@swagger.io
license:
name: Apache 2.0
url: http://www.apache.org/licenses/LICENSE-2.0.html
В настоящее время я использую swagger-maven-plugin для генерации файла YAML с определением Swagger 2.0 и преобразования его в определение Open API 3.0 с использованием swagger2openapi в https://mermade.org.uk/openapi-converter
Вопрос 1: Можноspring-maven-plugin захватывает io.swagger.v3.oas.annotations для генерации YAML?
Вопрос 2. Каков наилучший способ создания YAML с определениями OPEN API в проекте Spring MVC?
Вопрос 3: Можно ли использовать io.swagger.v3.oas с проектами Spring или только для проектов JAX-RS?