本文介绍了如何在生成Spring代码时将OpenAPI&one of"属性与Openapi-Generator-maven-plugin一起使用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在开发一个具有棱角前端和REST风格的Spring Boot后端的应用程序

我从org.Openapitools找到了这个非常方便的maven插件openapi-generator-maven-plugin。凭借其代码生成功能,它有助于在我们的API的前端和后端之间实施合同优先的方法。但是我们的swagger文件在questBody和ResponseBody定义中使用了";one of";属性。我曾尝试由此生成Spring代码,但生成的Java类缺少导入:

import com.pack.api.dto.OneOfLatteCoffeAmericanoCoffe;
import com.pack.api.dto.UNKNOWN_BASE_TYPE;

有没有办法让这个插件与Swagger的一个属性一起工作?我是uSig Spring Boot 2.3.1、Swagger 3.0和Openapi-Generator-maven-plugin 4.3

推荐答案

目前OpenAPI-Generator不支持oneOf。这是OpenAPI v3中新引入的一项功能(仅供参考,只有v2及更低版本称为&Swagger&),然后将其重命名为OpenAPI)。有各种生成器(Java、Spring和许多其他语言)。我已经看到这一年的contributions have been madeenable oneOf support

总而言之,在您可以使用Spring的生成器来利用OpenAPI v3规范的这一特性之前,您似乎还需要再等待一段时间。

编辑:也列出on the "short term roadmap"

这篇关于如何在生成Spring代码时将OpenAPI&one of"属性与Openapi-Generator-maven-plugin一起使用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-19 20:46