Cha*_*hra 5 swagger-ui spring-boot swagger-codegen
我在spring中使用swagger code-gen从swagger.yaml文件生成了代码.
现在我已经为我的API更新了swagger.yaml文件,并添加了更多的HTTP操作.
是否可以自动更新先前生成的现有代码而无需手动合并?
Tho*_*int 15
我猜你在谈论由codegen生成的控制器,然后你已经实现了.它们在每一代之后被覆盖,这意味着你必须手动合并代码以便每次都添加更改...这真的很烦人.
我能找到的最好的工作流程是使用该interfaceOnly选项仅在目标目录中生成模型和接口类,然后手动创建实现这些接口的控制器.
让我们说你用一个GET操作更新你的API规范文件,用新的操作重新生成界面,你只需要调整你的控制器来实现这个新方法(使用现代IDE超级快速和简单),其他一切仍然是同样,你可以更好地控制你的代码(在不同的文件夹中拆分控制器......等等).
这是我用于插件的配置:
<plugin>
    <groupId>io.swagger</groupId>
    <artifactId>swagger-codegen-maven-plugin</artifactId>
    <version>2.2.3</version>
    <executions>
        <execution>
            <goals>
                <goal>generate</goal>
            </goals>
            <configuration>
                <inputSpec>./api-contract/petstore.yml</inputSpec>
                <language>spring</language>
                <configOptions>
                    <sourceFolder>swagger</sourceFolder>
                    <java8>true</java8>
                    <interfaceOnly>true</interfaceOnly>
                </configOptions>
            </configuration>
        </execution>
    </executions>
</plugin>
您可以在此处使用带有swagger-codegen-maven-plugin的Spring Boot检查完整的示例项目.
干杯
| 归档时间: | 
 | 
| 查看次数: | 3556 次 | 
| 最近记录: |