Swagger注解@ApiModel-value值相同时,文档字段定义新增或者修改时无效(很容易误以为是缓存问题,各种重启清缓存也无效)

解决方法在最后,时间急的直接看最后把

描述:因为这个问题导致以为是缓存问题,各种重启服务、清浏览器缓存都还是一样,新增字段就是不在文档中显示。

解决过程:

看swagger源码,debug追踪。

最终定位代码问题在:

springfox.documentation.swagger2.mappers.ModelSpecificationMapper#modelsFromApiListings

Swagger注解@ApiModel-value值相同时,文档字段定义新增或者修改时无效(很容易误以为是缓存问题,各种重启清缓存也无效)_第1张图片

 多个controller方法,如果有参数或者相应的bean的@ApiModel的value相同,putAll会根据这个@ApiModel的value作为key,最终modelMap相同的key会相互覆盖,只保留其中一个文档定义。

解决方法:@ApiModel的value值改为不一样,然后重启服务即可

后面百度了下,也有人发现这个问题了:Swagger注解@ApiModel的巨坑_不忘初心mm的博客-CSDN博客

你可能感兴趣的:(java,开发语言)