OpenAPI Generator Swift5生成器如何生成Swift非空类型?
Swift5 OpenAPI Generator 非空类型生成问题解决
swift5生成器7.1.0版本支持生成非空类型,但默认行为不会根据nullable: false自动生成非可选属性,需要通过额外配置调整。
问题原因
OpenAPI Generator的swift5生成器在7.x版本中,默认会将所有对象属性生成为可选类型(如String?),无论你在OpenAPI规范中设置nullable: false,这是该版本的默认兼容逻辑。
解决方法
在生成命令中添加optionalPropertyPrefix=参数,将可选属性的前缀设为空字符串,这样生成器就会根据nullable的设置来区分非可选/可选类型:
openapi-generator generate -i my_spec.json -g swift5 -o ./ --additional-properties=projectName=MyAPI,optionalPropertyPrefix=
效果验证
- 当OpenAPI规范中
Teaser的title字段设置nullable: false时,重新生成的代码中该字段会变为非可选的String - 若字段设置
nullable: true,则仍会生成为String? - 规范中未显式设置
nullable的字段,默认按nullable: false处理,生成非可选类型
内容的提问来源于stack exchange,提问作者Rafał Sroka
相关产品推荐
相关产品推荐

