使用swagger-codegen创建客户端存根

时间:2017-06-24 18:22:32

标签: node.js retrofit retrofit2 swagger-codegen

我一直在尝试使用swagger-codegen为我的前端客户端创建客户端存根。 以下是我一直在使用的命令:

java -jar swagger-codegen-cli-2.2.2.jar generate -i "docs-endpoint" -l nodejs-server -o retrofit/ -c config.json

以下是配置:

{
  "apiPackage": "com.xyz.api",
  "modelPackage": "com.xyz.model",
  "groupId":"com.xyz.prototype",
  "artifactVersion":"1.0-SNAPSHOT",
  "artifactId":"xyz-api",
  "library":"retrofit"
}

但是我收到以下错误:

Exception in thread "main" java.lang.RuntimeException: unknown library: retrofit
    at io.swagger.codegen.DefaultCodegen.setLibrary(DefaultCodegen.java:3159)
    at io.swagger.codegen.config.CodegenConfigurator.toClientOptInput(CodegenConfigurator.java:409)
    at io.swagger.codegen.cmd.Generate.run(Generate.java:232)
    at io.swagger.codegen.SwaggerCodegen.main(SwaggerCodegen.java:41)

如果我从配置中删除了库,它工作正常。有人可以告诉我我做错了什么吗?

1 个答案:

答案 0 :(得分:0)

我认为你想要生成一个Java API客户端,这里是命令:

#version 130

in vec4 position;

void main() {
    gl_FragColor.z = position.z;    // still doesn't work with this line commented
}

我建议java -jar swagger-codegen-cli-2.2.2.jar generate -i "docs-endpoint" -ljava -o retrofit/ -c config.json 代替retrofit2,因为retrofit不再得到积极维护。

您可能希望从最新的master构建Swagger Codegen CLI JAR,其中包含许多增强功能和错误修复。