java - 在 Swagger Editor 中更改 java 项目的默认包名称

标签 java jax-rs swagger swagger-editor

我已经下载了 Swagger Editor 并从 localhost:3001 在本地运行它。我从本地系统导入了 .yaml 文件。然后我单击生成服务器并选择jaxrs。当我打开一个随机 java 文件时,我可以看到:

package io.swagger.model;

我有超过 30 个 java 类,我不想手动更改它,因为我的 .yaml 将来可能会更改。是否有可能改变它,例如:

package my.funny.package.model;

//编辑:

我从此 swagger-editor 下载了 Swagger Editor并使用从 Contribute 部分截取的代码运行它。在我的文件夹文件中,我无法从建议的帖子中找到 .jar 文件。

最佳答案

Swagger 编辑器使用 Swagger Codegen (具体来说,其在线版本为 http://generator.swagger.io )生成客户端和服务器代码。它使用默认设置运行 Codegen。如果您想自定义代码生成,则需要直接运行 Codegen。

使用 Swagger Codegen CLI

Swagger Codegen 有一个命令行版本,swagger-codegen-cli.jar。有several ways to install it取决于您的操作系统。一种方法是从 Maven Central 下载 JAR 文件:http://central.maven.org/maven2/io/swagger/swagger-codegen-cli/

您可以按如下方式运行代码生成器:

java -jar swagger-codegen-cli.jar generate
     -i http://petstore.swagger.io/v2/swagger.json
     -l jaxrs
     -o Petstore-Jaxrs
     -DapiPackage=my.funny.package.model

自定义选项,例如包名称,可以使用-D{optionName}={optionValue}(如上所示)直接在命令行中指定,或使用配置文件(如下所述) here .

要列出特定生成器支持的所有选项,请使用:

java -jar swagger-codegen-cli.jar config-help -l jaxrs

使用 SwaggerHub

披露:我在开发 SwaggerHub 的公司工作。

如果您使用SwaggerHub它可以让您在下载代码之前自定义 Codegen 选项,而不是使用 Swagger Editor 来编写和存储 API 定义。

SwaggerHub > Edit Codegen Options

SwaggerHub > Codegen Options > jaxrs > package name

关于java - 在 Swagger Editor 中更改 java 项目的默认包名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49514341/

相关文章:

java - 父类(super class) 子类 构造函数 java

c# - 非常大的整数的快速乘法

java - Jersey:默认缓存控制为无缓存

node.js - 将 OpenAPI 3 与 Node.JS 结合使用

java - 扫描仪在使用 next() 或 nextFoo() 后跳过 nextLine()?

java - 原型(prototype)在 nashorn 中从 globalscope 更改为 enginescope

java - JAX-RS 服务抛出 404 HTTPException 但客户端收到 HTTP 500 代码

jax-rs - Servlet 3.0 和 JAX-RS

node.js - 如何将 Node.js swagger 项目放入 lambda 中?

asp.net-web-api2 - 当试图打开 Swagger-UI 时只得到一个 json 响应