编译swagger codegen java Petstore sdk时出错

编译swagger codegen java Petstore sdk时出错,java,gson,swagger-codegen,Java,Gson,Swagger Codegen,我正在尝试使用swagger codegen(3.0.0)生成java API 我使用的是codegenjar的swagger-codegen-cli-3.0.24.jar版本。 我运行以下命令为示例petstore项目生成SDK: java -jar swagger-codegen-cli.jar generate -i code/swagger-codegen/modules/swagger-codegen/src/test/resources/3_0_0/petstore.json -l

我正在尝试使用swagger codegen(3.0.0)生成java API 我使用的是codegenjar的swagger-codegen-cli-3.0.24.jar版本。 我运行以下命令为示例petstore项目生成SDK:

java -jar swagger-codegen-cli.jar generate -i code/swagger-codegen/modules/swagger-codegen/src/test/resources/3_0_0/petstore.json -l java -o out/pet-java
编译生成的sdk项目时:

cd out/pet-java
mvn clean package
我得到以下错误:

Compilation failure
[ERROR] out/pet-java/src/main/java/io/swagger/client/model/Pet.java:[87,34] cannot find symbol
[ERROR]   symbol:   method nextObject()
[ERROR]   location: variable jsonReader of type com.google.gson.stream.JsonReader
它使用2.8.1作为依赖项。

最终,真正的答案是让斯威格·科德根修复他们的回归。他们承认这是个问题。与此同时,我针对自己的特殊情况,围绕这个问题展开了工作。要演示必要的更改类型,请参见以下内容:

在某些文件而不是nextObject()中,可能会调用next()。然而,解决方案是相同的


对于差异中的任何混乱,我深表歉意。显然,我将文件中的原始行保留在工作替换行下方的注释栏中。

codegen似乎已损坏。中没有
nextObject
。您是否也面临同样的问题?我没有使用Swagger 3,仍然使用Swagger 2(+codegen),我只是告诉您,由codegen生成的代码无法编译,因为codegen生成非法代码。我从基于Strava API的Swagger生成java代码时遇到相同的错误:。对于他们的API,他们使用了swagger 2.x。为了修复我上面的注释,我在编译生成的java时遇到了相同的错误:JsonReader中没有方法nextObject()。在为我自动生成的代码中,91个文件中,有10个需要修复上面的“nextObject()”或“next()”。
it is using <gson-version>2.8.1</gson-version> as dependency.