OpenAPI Generator jaxrs-spec生成冗余导入,如何自动移除?
解决OpenAPI Generator jaxrs-spec生成器未使用导入自动移除问题
1. 利用OpenAPI Generator内置配置
OpenAPI Generator的Java类生成器(包含jaxrs-spec)支持通过removeUnusedImports配置项自动清理未使用的导入语句,6.5.0和6.6.0版本均支持该功能。
不同场景的配置方式:
- Maven插件:在插件配置块中添加参数:
<plugin> <groupId>org.openapitools</groupId> <artifactId>openapi-generator-maven-plugin</artifactId> <version>6.6.0</version> <executions> <execution> <goals> <goal>generate</goal> </goals> <configuration> <generatorName>jaxrs-spec</generatorName> <!-- 其他必填配置(如API定义文件路径、输出目录等) --> <removeUnusedImports>true</removeUnusedImports> </configuration> </execution> </executions> </plugin>
- 命令行工具:执行生成命令时添加
--remove-unused-imports参数:
openapi-generator generate -g jaxrs-spec -i ./openapi.yaml -o ./generated-code --remove-unused-imports
2. 结合代码格式化工具补充处理
如果内置配置仍有遗漏,可在代码生成后借助Java格式化工具自动整理导入:
- Spotless Maven插件:配置后在生成阶段自动执行导入优化,适合CI/CD流水线:
<plugin> <groupId>com.diffplug.spotless</groupId> <artifactId>spotless-maven-plugin</artifactId> <version>2.34.0</version> <executions> <execution> <phase>process-generate-sources</phase> <goals> <goal>apply</goal> </goals> </execution> </executions> <configuration> <java> <googleJavaFormat>1.17.0</googleJavaFormat> <importOrder>java,javax,org,com</importOrder> <removeUnusedImports/> </java> </configuration> </plugin>
- 本地IDE自动处理:在IntelliJ IDEA或Eclipse中配置生成后自动执行“优化导入”操作(如IDEA的
Optimize Imports),适合本地开发场景。
内容的提问来源于stack exchange,提问作者rony
相关产品推荐
相关产品推荐

