OpenApi生成器无法获取架构名称



我有openapi合约:

openapi: 3.0.1
info:
version: 1.0.0
paths:
/getInteractions:
post:
requestBody:
content:
application/json:
schema:
$ref: scheme/interactionsRq.json
required: true
responses:
"200":
content:
application/json:
schema:
$ref: scheme/mainRs.json

在这种结构中:

-resources
--GetInteractionController.yaml
--scheme
----interactionsRq.json
----interactionsRs.json
----mainRs.json

在mainRs.json中,我对另一个json有一些引用,如下所示:

"resultApi": {
"title": "result",
"type": "object",
"properties": {
"interactionList": {
"type": "array",
"minItems": 0,
"maxItems": 100,
"items": {
"$ref": "interactionsRs.json#/definitions/interactionApi"
}
}
}

当我尝试用openapi生成器maven插件包这个时:

<plugin>
<groupId>org.openapitools</groupId>
<artifactId>openapi-generator-maven-plugin</artifactId>
<version>5.3.1</version>
<executions>
<execution>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<inputSpec>${project.basedir}/src/main/resources/GetInteractionController.yaml</inputSpec>
<generatorName>spring</generatorName>
<apiPackage>some.api.package</apiPackage>
<modelPackage>some.dto.package</modelPackage>
<supportingFilesToGenerate>ApiUtil.java</supportingFilesToGenerate>
<configOptions>
<delegatePattern>true</delegatePattern>
</configOptions>
</configuration>
</execution>
</executions>
</plugin>

我收到一个警告和构建错误:

[WARNING] Failed to get the schema name: ./scheme/interactionsRs.json#/definitions/interactionApi

openapi能像我一样用refs生成代码吗?或者我需要重构json模式并删除这个refs?也许将其连接到一个文件或类似的文件中

现在我明白了,这是我的JSON方案的问题,但不是openapi生成器的问题。

在JSON方案中,我使用了一个jsonschema2pojo特性"customDateTimePattern":"yyyy-MM-dd’T'HH:MM:ssZ";它给了我一个错误。当我删除它时,一切都变得很好

相关内容

  • 没有找到相关文章

最新更新