OpenApi CodeGen关闭Bean校验仍生成@Nullable注解问题求助
解决生成模型中出现@javax.annotation.Nullable的问题
你设置的useBeanValidation和performBeanValidation是控制Bean Validation注解(如@NotNull、@Size)的生成,和@Nullable注解无关。要去掉这个注解,需要调整以下配置:
1. 添加useNullableAnnotations=false到生成参数
修改openApiGeneratorConfig中的additional-properties,添加该参数:
args "--additional-properties", "library=feign," + "dateLibrary=java8," + "useBeanValidation=false," + "performBeanValidation=false," + "useNullableAnnotations=false"
2. 检查自定义配置文件pet.json
如果你的pet.json配置文件中存在useNullableAnnotations相关设置,确保它的值也是false,避免覆盖命令行参数。
3. 检查自定义模板(若有修改)
因为你指定了自定义模板目录-t "$projectDir/src/main/resources/openapi-config/templates",如果模板文件(比如模型类的模板)中硬编码了@javax.annotation.Nullable注解,需要手动修改模板,删除对应的注解逻辑。
比如找到模型字段的模板片段,移除类似以下的代码:
#if ($field.nullable) @javax.annotation.Nullable #end
完成以上调整后,重新执行generateApi任务,生成的模型字段就不会再出现@Nullable注解了。
内容的提问来源于stack exchange,提问作者dev-rifaii
相关产品推荐
相关产品推荐

