如何告诉 springdoc-openapi-maven-plugin 生成 YAML 而不是 JSON?
How to tell springdoc-openapi-maven-plugin to generate YAML instead of JSON?
我是这样使用springdoc-maven-openapi-plugin
的:
<plugin>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-maven-plugin</artifactId>
<version>1.1</version>
<executions>
<execution>
<id>integration-test</id>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
<configuration>
<apiDocsUrl>http://localhost:9090/v3/api-docs</apiDocsUrl>
<outputDir>${project.build.directory}/my_open_api_specification/</outputDir>
<outputFileName>my_open_api_specification.yml</outputFileName>
<skip>false</skip>
</configuration>
</plugin>
这会在目标文件夹中生成一个 OpenAPI 文档,其名称后缀为“.yml”,但实际上它是一个 JSON.
如何让插件有效地创建 YAML 格式的文档?
http://localhost:9090/v3/api-docs是默认的api-url,生成JSON。
要创建 YAML,只需使用 http://localhost:9090/v3/api-docs.YAML
问题是关于编译时生成的。
对于编译它会像:
<configuration>
<apiDocsUrl>http://localhost:8080/v3/api-docs.yaml</apiDocsUrl>
<outputFileName>openapi.yaml</outputFileName>
<skip>false</skip>
</configuration>
apiDocsUrl
应该以 .yaml
结尾,否则它会在 yaml 文件
中生成 JSON
预计 运行:
./mvnw springdoc-openapi:generate
在 ./target/openapi.yaml
yaml 格式的规范中
查看https://github.com/springdoc/springdoc-openapi-maven-plugin/issues/12了解更多
我是这样使用springdoc-maven-openapi-plugin
的:
<plugin>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-maven-plugin</artifactId>
<version>1.1</version>
<executions>
<execution>
<id>integration-test</id>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
<configuration>
<apiDocsUrl>http://localhost:9090/v3/api-docs</apiDocsUrl>
<outputDir>${project.build.directory}/my_open_api_specification/</outputDir>
<outputFileName>my_open_api_specification.yml</outputFileName>
<skip>false</skip>
</configuration>
</plugin>
这会在目标文件夹中生成一个 OpenAPI 文档,其名称后缀为“.yml”,但实际上它是一个 JSON.
如何让插件有效地创建 YAML 格式的文档?
http://localhost:9090/v3/api-docs是默认的api-url,生成JSON。 要创建 YAML,只需使用 http://localhost:9090/v3/api-docs.YAML
问题是关于编译时生成的。
对于编译它会像:
<configuration>
<apiDocsUrl>http://localhost:8080/v3/api-docs.yaml</apiDocsUrl>
<outputFileName>openapi.yaml</outputFileName>
<skip>false</skip>
</configuration>
apiDocsUrl
应该以 .yaml
结尾,否则它会在 yaml 文件
预计 运行:
./mvnw springdoc-openapi:generate
在 ./target/openapi.yaml
yaml 格式的规范中
查看https://github.com/springdoc/springdoc-openapi-maven-plugin/issues/12了解更多