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版本号:
<dependency>
    <groupId>com.github.xiaoymin</groupId>
    <artifactId>knife4j-spring-boot-starter</artifactId>
    <version>2.0.3</version>
</dependency>
3-2.springboot版本号:
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starters</artifactId>
    <version>2.2.4.RELEASE</version>
</parent>
图 1-1 实体类定义.png
图 1-2 swagger-resources请求正常.png
图 1-3 api-docs请求正常.png
图 1-4 文档请求异常.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容