使用swagger2.0遇到的问题-启动服务出现空指针异常(Unable to scan documentation context default)

我们项目在使用swagger2.0的时候,有一天启动服务发现,服务日志有空指针异常,异常信息如下:

[ERROR] (AbstractDocumentationPluginsBootstrapper.java:98) - Unable to scan documentation context default
java.lang.NullPointerException: null
at springfox.documentation.schema.Example.equals(Example.java:131) ~[springfox-core-3.0.0.jar:3.0.0]
at java.util.Objects.equals(Objects.java:59) ~[?:1.8.0_231]
at springfox.documentation.service.RequestParameter.equals(RequestParameter.java:132) ~[springfox-core-3.0.0.jar:3.0.0]
at java.util.HashMap.putVal(HashMap.java:635) ~[?:1.8.0_231]

经过排查发现,引起这个错误的是某个接口,进一步检查发现这个接口使用的入口参数实体类,同事在定义时,把成员变量的属性都弄成了public,swagger在获取参数时,不能正确识别。
后来同事把这个实体类的成员变量的属性都改成private后,重新启动服务,运行正常。

经过查找资料,发现swagger3之后的版本好像是解决了这个异常问题,我没有进一步验证,感兴趣的小伙伴可以自己验证一下。

你可能感兴趣的:(springboot)