在Springboot中整合Swagger 版本2.9.2 的话会出现报错:java.lang.NumberFormatException: For input string: “”。
出现该报错的原因是因为 2.9.2中默认使用的是 swagger-models-1.5.20 版本,该版本中的example只判断了值是否为空,但是并没有判断值是否是空串,所以在这是一个BUG,映射上就会报 NumberFormatException 异常
比如在实体类中使用注解 @ApiModelProperty 该注解中有个属性example,若该属性不设置,那么默认为"",也就是会报NumberFormatException 异常。
解决方法:
排除swagger2中 swagger-models-1.5.20 版本的依赖,
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<exclusions>
<exclusion>
<groupId>io.swagger</groupId>
<artifactId>swagger-models</artifactId>
</exclusion>
</exclusions>
</dependency>
手动添加 1.5.21 版本,该版本已解决 只判断 null 不判断 “”的问题
<dependency>
<groupId>io.swagger</groupId>
<artifactId>swagger-models</artifactId>
<version>1.5.21</version>
</dependency>