maven 为什么Open API Generator生成带下划线的方法?

xt0899hw  于 2022-12-03  发布在  Maven
关注(0)|答案(1)|浏览(155)

我正在使用带有Java Maven插件的开放式API生成器
当我构建项目时,它生成了两个方法,一个带有注解,另一个供我们重写。为什么不能是一个单独的方法呢?是不是有什么配置错误?

<plugin>
    <groupId>org.openapitools</groupId>
    <artifactId>openapi-generator-maven-plugin</artifactId>
    <version>${openapi-generator-maven-plugin.version}</version>
    <executions>
        <execution>
            <goals>
                <goal>generate</goal>
            </goals>
            <configuration>
                <inputSpec>${project.basedir}/src/main/resources/openapi.yaml</inputSpec>
                <generatorName>spring</generatorName>
                <apiPackage>club.allin.api</apiPackage>
                <modelPackage>club.allin.models</modelPackage>
                <skipValidateSpec>false</skipValidateSpec>
                <strictSpec>true</strictSpec>
                <generateApiDocumentation>true</generateApiDocumentation>
                <removeOperationIdPrefix>true</removeOperationIdPrefix>
                <configOptions>
                    <useTags>true</useTags>
                    <delegatePattern>true</delegatePattern>
                    <interfaceOnly>true</interfaceOnly>
                    <removeOperationIdPrefix>true</removeOperationIdPrefix>
                </configOptions>
            </configuration>
        </execution>
    </executions>
</plugin>

它会产生类似的东西

@GetMapping
default ResponseEntity<ResponseObject> _getSpendings(){
   return getSpendings();
}

//Override this method
default ResponseEntity<ResponseObject> getSpendings(){
   return new ResponseEntity<>(HttpStatus.NOT_IMPLEMENTED);
}

为什么会生成两个方法?我可以配置为只有一个吗?
printscreen image

xqkwcwgp

xqkwcwgp1#

您正在设置<delegatePattern>true</delegatePattern>,只需将其设置为false或删除它(默认值为false),如果您不需要它,您将获得一个方法。当我尝试触发控制器方法的方面时,我遇到了委托模式的问题,它也成功了。

相关问题