Swagger 代码生成器因 StackOverflowError 而失败

Swagger Code Generator Is Failing With StackOverflowError

我正在尝试使用以下 JSON 文件生成一些模型对象以在我的 Java/Spring 启动应用程序中使用:

https://github.com/tmforum-apis/TMF622_ProductOrder/blob/master/Product_Ordering_Management.regular.swagger.json

我在 POM.xml 中包含了以下内容:

<version.swagger.codegen>3.0.10</version.swagger.codegen>
<version.swagger.annotations>2.0.8</version.swagger.annotations>

<plugin>
    <groupId>io.swagger.codegen.v3</groupId>
    <artifactId>swagger-codegen-maven-plugin</artifactId>
    <version>${version.swagger.codegen}</version>
    <executions>
        <execution>
            <goals>
                <goal>generate</goal>
            </goals>
            <configuration>
                <inputSpec>src/main/resources/swagger/tmf622/product_ordering_management.json</inputSpec>
                <modelPackage>tmf622.v1.model</modelPackage>
                <apiPackage>tmf622.v1.api</apiPackage>
                <generateModels>true</generateModels>
                <generateApis>true</generateApis>                           
                <generateApiTests>true</generateApiTests>
                <generateApiDocumentation>true</generateApiDocumentation>
                <generateSupportingFiles>true</generateSupportingFiles>      
                <language>spring</language>
                <output>${project.build.directory}/generated-sources/swagger</output>                           
            </configuration>
        </execution>
    </executions>
    <dependencies>
        <dependency>
            <groupId>io.swagger.core.v3</groupId>
            <artifactId>swagger-annotations</artifactId>
            <version>${version.swagger.annotations}</version>
        </dependency>                  
    </dependencies>               
</plugin>
<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>build-helper-maven-plugin</artifactId>
    <executions>
        <execution>
            <id>add-source</id>
            <phase>generate-sources</phase>
            <goals>
                <goal>add-source</goal>
            </goals>
            <configuration>
                <sources>
                    <source>${project.build.directory}/generated-sources/swagger</source>
                </sources>
            </configuration>
        </execution>
    </executions>
</plugin>

当我构建应用程序时,我得到以下 WhosebugError:

constituent[47]: file:/C:/Software/apache-maven-3.6.1/lib/wagon-provider-api-3.3.2.jar
---------------------------------------------------
Exception in thread "main" java.lang.WhosebugError
    at org.slf4j.impl.SimpleLogger.debug(SimpleLogger.java:438)
    at io.swagger.codegen.v3.generators.examples.ExampleGenerator.resolveSchemaToExample(ExampleGenerator.java:165)
    at io.swagger.codegen.v3.generators.examples.ExampleGenerator.resolveSchemaToExample(ExampleGenerator.java:247)
    at io.swagger.codegen.v3.generators.examples.ExampleGenerator.resolveSchemaToExample(ExampleGenerator.java:240)
    at io.swagger.codegen.v3.generators.examples.ExampleGenerator.resolveSchemaToExample(ExampleGenerator.java:247)
    at io.swagger.codegen.v3.generators.examples.ExampleGenerator.resolveSchemaToExample(ExampleGenerator.java:240)
    at io.swagger.codegen.v3.generators.examples.ExampleGenerator.resolveSchemaToExample(ExampleGenerator.java:194)
    at io.swagger.codegen.v3.generators.examples.ExampleGenerator.resolveSchemaToExample(ExampleGenerator.java:247)
    at io.swagger.codegen.v3.generators.examples.ExampleGenerator.resolveSchemaToExample(ExampleGenerator.java:240)
    at io.swagger.codegen.v3.generators.examples.ExampleGenerator.resolveSchemaToExample(ExampleGenerator.java:247)
    at io.swagger.codegen.v3.generators.examples.ExampleGenerator.resolveSchemaToExample(ExampleGenerator.java:240)
    at io.swagger.codegen.v3.generators.examples.ExampleGenerator.resolveSchemaToExample(ExampleGenerator.java:194)
    at io.swagger.codegen.v3.generators.examples.ExampleGenerator.resolveSchemaToExample(ExampleGenerator.java:247)
    at io.swagger.codegen.v3.generators.examples.ExampleGenerator.resolveSchemaToExample(ExampleGenerator.java:240)
    at io.swagger.codegen.v3.generators.examples.ExampleGenerator.resolveSchemaToExample(ExampleGenerator.java:247)
    at io.swagger.codegen.v3.generators.examples.ExampleGenerator.resolveSchemaToExample(ExampleGenerator.java:240)

关于如何解决这个问题有什么想法吗?

issue 是由 API 定义中的递归模式引起的。它已在 Swagger Codegen 3.0.11 中修复。