OpenApi 生成器:使用 Long 作为数字默认值?

OpenApi Generator: Use Long as Numeric default?

我们正在使用 openapi-generator 的 openapi-generator-maven-plugin 来自动化与 swagger 的集成,该 swagger 使用 not int64 的数字数据类型。我们的代码库尝试围绕使用 Long 值进行标准化,但 openapi 生成使用 int 的工件。是否可以配置插件以生成使用 Long 而不是 Integer 的 POJO?

我们可以修改 swagger 定义以指定 int64 格式,但更喜欢通过 swagger 之外的配置来执行此操作。

使用format关键字指定int64.

example:
  type: integer
  format: int64

我为此使用了 typeMappings 参数。使用 Maven 插件配置,它看起来像这样:

<plugin>
<groupId>org.openapitools</groupId>
<artifactId>openapi-generator-maven-plugin</artifactId>
<version>5.1.0</version>
<configuration>
    <typeMappings>integer=Long,int=Long</typeMappings>
</configuration>
<executions>
    <execution>
    ...
    </execution>
</executions>
</plugin>

请注意,在撰写本文时,此配置并不像在 swagger-codegen 中那样在执行内部起作用。直接调用openapi-generator时也可以使用typemappings参数