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

如何配置Swagger Codegen 3适配Angular 15并解决代码生成异常

Swagger Codegen 指定Angular 15版本失败及相关问题解决

问题背景

使用Swagger Codegen 3.0.34,尝试将生成的代码适配Angular 15版本。已创建配置文件,能正常生成接口和其他配置,但无法切换到Angular 15。

配置文件内容:

{
  "ngVersion": "15..."
}

生成代码时遇到两个异常,希望通过指定Angular版本解决:

  • 部分生成的模型包含不存在的modelObject类型
  • 编码器文件需要在encodeKey相关代码前手动添加override关键字,即:
    override encodeKey....
    

使用的代码生成命令:

java -jar C:/tools/swagger-codegen-cli-3.0.34.jar generate -i http://petstore.swagger.io/v2/swagger.json -l typescript-angular -o C:/swagger-code-gen/3-6-23-eight -Dmodels=true  -DmodelDocs=false -DmodelTests=false -c C:/tools/angular-swagger-option.json

更新1:部分问题解决,新问题出现

通过修改typescript-angular模板并使用-t参数指定模板,解决了encodeKey需要手动加override的问题。但新出现问题:部分生成的模型和API尝试导入不存在的objectModel,而Swagger定义中并未包含该模型。

更新2:最终解决方案

将Swagger Codegen升级至3.0.41版本后,所有问题均已解决。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 07:12:39