【问题标题】:How to use swagger code-generator如何使用 swagger 代码生成器
【发布时间】:2018-07-05 21:52:43
【问题描述】:

我正在创建其余的客户端,我将调用一个提供这个大 json 输出的 API。我想知道如何通过将这个 json 输入到 swagger code gen 并让它创建我的 pojo 来自动创建 Pojo 类为我上课,这将节省人工时间。这是我尝试过的

要为http://petstore.swagger.io/v2/swagger.json 生成 PHP 客户端,请运行以下命令

git clone https://github.com/swagger-api/swagger-codegen
cd swagger-codegen
mvn clean package
java -jar modules/swagger-codegen-cli/target/swagger-codegen-cli.jar generate \
   -i http://petstore.swagger.io/v2/swagger.json \
   -l php \
   -o /var/tmp/php_api_client

(如果您使用的是 Windows,请将最后一个命令替换为 java -jar modules\swagger-codegen-cli\target\swagger-codegen-cli.jar generate -i http://petstore.swagger.io/v2/swagger.json -l php -o c:\temp\php_api_client

我无法通过 mvn clean 包,它给出了错误

[错误] 无法在项目 swagger-codegen 上执行目标 org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test (default-test):执行目标 org.apache 的默认测试。 maven.plugins:maven-surefire-plugin:2.19.1:test failed: 分叉进程出错
[错误] java.lang.NoClassDefFoundError: io/swagger/models/properties/Property

有人成功使用过这个招摇吗?或者即使您可以建议任何其他可以执行此功能的框架也会有很大帮助。在此先感谢..,

我看到了以下链接 Update code generated by Swagger code-gen 并且能够运行应用程序.. 谁能解释我是否可以使用它来获取为 json 输入创建的 pojo 对象?

【问题讨论】:

    标签: swagger swagger-ui swagger-codegen swagger-editor


    【解决方案1】:

    你的问题不在于招摇本身。您的问题来自 Maven,它说它找不到某个类。我下载了 repo,它使用 mvn validate 包在我的机器上编译。确保您的标准 maven 缓存目录中有 .m2\repository\io\swagger\swagger-models...。这就是依赖项,它具有 Property 类。 实际上maven应该在编译之前下载它。检查 maven 输出是否存在连接错误或无法访问的下载等。

    【讨论】:

    • 你能分享你的 maven 的 settings.xml 吗?您可以删除 settings.xml 中的任何凭据并可以共享?
    • 我当前的 pc 上没有任何 maven settings.xml。我从 github.com/swagger-api/swagger-codegen 下载了 codegen 项目并执行 mvn install。它将编译模块文件夹中的所有“子项目”并将它们安装到本地 maven 缓存中(通常是 C:\Users\MyAccount\.m2\...)。之后您可以使用例如: java -jar C:\Users\MyAccount\.m2\repository\io\swagger\swagger-codegen-cli\2.3.1\swagger-codegen- cli-2.3.1.jar generate - i .\swagger.yaml -l java -o .\codegen\ -c .\swagger-config.json 在你的 cmd 或 power shell 中
    猜你喜欢
    • 1970-01-01
    • 2018-09-24
    • 2020-02-17
    • 2019-04-09
    • 1970-01-01
    • 2017-02-24
    • 2019-11-15
    • 2016-07-08
    • 2018-03-01
    相关资源
    最近更新 更多