Knife4j文档请求异常,超出最大调用堆栈大小(Maximum call stack size exceeded)

1.问题描述

如果A类里面使用了map,且map的value是A类,如图 1-1所示,knife4j在解析json的时候会出现超出最大调用堆栈大小异常(Maximum call stack size exceeded),估计是递归没有边界

console报错日志

app.ed549958.js:2 RangeError: Maximum call stack size exceeded
    at $.get [as currentInstance] (chunk-vendors.9ff0f717.js:2)
    at $.findRefDefinition (app.ed549958.js:2)
    at $.findRefDefinition (app.ed549958.js:2)
    at $.findRefDefinition (app.ed549958.js:2)
    at $.findRefDefinition (app.ed549958.js:2)
    at $.findRefDefinition (app.ed549958.js:2)
    at $.findRefDefinition (app.ed549958.js:2)
    at $.findRefDefinition (app.ed549958.js:2)
    at $.findRefDefinition (app.ed549958.js:2)
    at $.findRefDefinition (app.ed549958.js:2)

2.解决方案

把map字段删了之后就正常了。

3.导致问题的请求和配置数据。

3-1.Knife4j和springfox-swagger版本号:

    com.github.xiaoymin
    knife4j-spring-boot-starter
    2.0.3

3-2.springboot版本号:

    org.springframework.boot
    spring-boot-starters
    2.2.4.RELEASE

图 1-1 实体类定义.png
图 1-2 swagger-resources请求正常.png
图 1-3 api-docs请求正常.png
图 1-4 文档请求异常.png

你可能感兴趣的:(Knife4j文档请求异常,超出最大调用堆栈大小(Maximum call stack size exceeded))