1、问题出现
偶然发现有一天,运行swagger会报java.lang.NumberFormatException: For input string: ""错误,出错的原因呢是因为 空字符串""
无法转成Number
。
2、分析
查阅大量资料发现是swagger版本的问题,我使用的是io.springfox:springfox-swagger2:2.9.2的版本,而该版本依赖了swagger-models
的1.5.20版本(会导致报此错),深挖原因是1.5.20版本中的example只判断了是否为null,没有判断是否为空串;1.5.21版本对两者都进行了判断。
3、解决办法
可以排除springfox-swagger2
中的swagger-models
依赖,导入io.swagger:swagger-models
的1.5.21版本即可。
在pom.xml中将swagger修改为如下:
<!--springboot 集成 swagger-->
<dependency>
<groupId>io.springfo