You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Swagger Codegen生成Jakarta而非Javax的Spring Controller代码?

问题描述

需要使用Swagger Codegen Gradle插件生成采用Jakarta包的Spring Controller源代码,但未找到对应配置选项,已尝试如下配置:

additionalProperties = [
                "errorOnUnknownEnum": true,
                "dateLibrary": "java8",
                "hideGenerationTimestamp": true,
                "modelPackage": "com.delphix.api.gw.model${version}",
                "apiPackage": "com.delphix.api.gw.api${version}",
                "interfaceOnly": true,
                "packageName": "api",
                "useTags": true,
                "useJakartaEe" : true,
                "useSpringBoot3" : true,
                "generateSupportingFiles" : false,
                "java11" : true,
        ]
解决方案
  • 确认插件版本:必须使用3.0.34及以上版本的Swagger Codegen Gradle插件,旧版本对useJakartaEe参数的支持不完善,无法正确生成Jakarta包的代码。
  • 修正生成模式:当前配置中interfaceOnly设为true,仅会生成API接口而非完整的Controller实现类。若需要生成Controller源代码,需将该参数改为false,插件会自动生成包含Jakarta注解的Controller类。
  • 补充版本指定参数:添加"jakartaEEVersion": "10"(或对应需求的版本如9),明确指定Jakarta EE版本,确保生成的代码依赖正确的包路径。
  • 校验生成器类型:确保插件的generatorName设置为spring,而非其他类型(如jaxrs),否则无法生成Spring风格的Controller代码。

完整配置示例:

swaggerCodegen {
    client {
        generatorName = "spring"
        inputSpec = file("src/main/resources/openapi.yaml").absolutePath
        outputDir = file("build/generated-sources/swagger").absolutePath
        additionalProperties = [
                "errorOnUnknownEnum": true,
                "dateLibrary": "java8",
                "hideGenerationTimestamp": true,
                "modelPackage": "com.delphix.api.gw.model${version}",
                "apiPackage": "com.delphix.api.gw.api${version}",
                "interfaceOnly": false,
                "packageName": "api",
                "useTags": true,
                "useJakartaEe": true,
                "useSpringBoot3": true,
                "generateSupportingFiles": false,
                "java11": true,
                "jakartaEEVersion": "10"
        ]
    }
}

内容的提问来源于stack exchange,提问作者jeet427

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 20:20:18