Knife4jAndSpringDoc
Knife4j是一个基于Swagger的增强工具,提供了更丰富的API文档展示和交互功能。SpringDoc是一个用于生成OpenAPI 3规范文档的库,专为Spring Boot应用设计。将Knife4j与SpringDoc结合使用,可以提升API文档的用户体验和功能性。
但是在更新的 Spring Boot 版本中,Knife4j 和 SpringDoc 的集成可能会遇到一些兼容性问题。
我遇到的问题是 在 springdoc-openapi-starter-common 2.3.0 版本 试图调用 ControllerAdviceBean 类时,发现该类在我的使用的 Spring 版本(6.2.10)中已经被移除,导致应用启动失败。解决方法是不再使用 Knife4j 提供的 starter,而是直接使用 springdoc-openapi-starter-webmvc-ui 依赖。
我选择通过 Apifox 来通过 SpringDoc 生成的 OpenAPI 文档来进行接口调试和文档管理,这样可以避免 Knife4j 的兼容性问题,同时也能享受到 SpringDoc 提供的强大功能。
也就是说把 Apifox 当成了前端来使用。