从Swagger规范生成Scala模型

时间:2019-04-23 18:50:26

标签: scala vert.x swagger-codegen

我正在尝试使用Scala构建Vert.X应用程序,并通过OpenAPI3RouterFactory使用OpenAPI 3规范生成路由。 我需要生成规范中描述为Scala类的模型。 是否有任何简单直接的方法来完成此任务?

我正在使用SBT来构建我的应用程序,并且我已经为Swagger尝试了一些 sbt codegen插件,但是它们似乎都不起作用。

1 个答案:

答案 0 :(得分:0)

使用vertx-web-api-contract,路由器和验证处理程序在运行时生成,因此您无需生成路由。您可以开始使用路由器工厂,并安装所需的处理程序,就好像它是Vert.x Web路由器一样。如果您想引导一个新项目,可以使用一个名为vertx-starter的社区工具,但是现在不支持Scala

谈论模型时,您可以做的是将OpenAPI规范组织在不同的文件中,并将所有数据模型定义放在特定的目录下,例如spec/models(您可以找到很好的指南here)。然后,您可以配置jsonschema2pojosbt plugin)为该目录内的每个架构生成Scala案例类。然后,如果要将规范重新打包到单个文件中,则可以配置swagger-cli之类的工具以在编译期间运行,并将规范重新打包到单个文件中