【问题标题】:swagger codegen keyword additionsswagger codegen 关键字添加
【发布时间】:2015-05-18 21:33:29
【问题描述】:

我必须维护一个使用 Swagger 代码生成 api 接口的项目。查看model.mustache,我看到了:

{{#models}}                  
{{#model}}{{#description}}   
/**                          
 * {{description}}           
 **/{{/description}}         

还有一堆其他的关键字,比如 enum、defaultValue、vars、package 等等。这些是从哪里来的?我一直在网上搜索,试图找到关于这个的招摇文档,但我找不到任何东西。许多在 github 上引用 swagger 信息的链接返回 404 页。最后,我想要做的是在我的实际 .json 文件中存在一个属性,swagger 使用该属性来生成接口和模型以有条件地生成代码。我看到有

{{#property}}{{/property}}
{{^property}}{{/property}}

if/else 语句的符号,但它不适用于我自己的 .json 的任何属性。例如,在我的 json 中,我有一个 id 字段。所以如果我想做一个人为的例子

{{#id}}System.out.println(“test test”);{{/id}}

不起作用,因为 swagger 无法识别 id 标签。所以我的问题是,我可以添加这些标签吗?

【问题讨论】:

    标签: java json swagger


    【解决方案1】:

    有很多工具可以提供帮助。如果您看到断开的链接,请将问题提交给swagger-codegen 项目。

    从 2.1.x-M1 开始,swagger-codegen 有一个非常有用的“调试”模式,可以让您列出环境的所有可能值。您可以按如下方式调用它:

    java -DdebugModels -jar {path-to}/swagger-codegen-cli.jar generate {opts}
    

    支持的调试标志是:

    -DdebugModels: outputs the variables for each model discovered by codegen
    -DdebugOperations: outputs the variables for each operation
    -DdebugSupportingFiles: shows supporting file data (anything but models or operations)
    -DdebugSwagger: shows the parsed swagger representation
    

    我确实看到自述文件中缺少这些内容。将确保他们被添加。

    【讨论】:

      猜你喜欢
      • 2020-08-21
      • 2021-02-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-15
      相关资源
      最近更新 更多