集成swagger后出现Failed to start bean ‘documentationPluginsBootstrapper‘ 您所在的位置:网站首页 documentationpluginsbootstrapper 集成swagger后出现Failed to start bean ‘documentationPluginsBootstrapper‘

集成swagger后出现Failed to start bean ‘documentationPluginsBootstrapper‘

2023-09-08 17:11| 来源: 网络整理| 查看: 265

集成swagger后出现Failed to start bean 'documentationPluginsBootstrapper' SpringBoot集成swagger后出现Failed to start bean ‘documentationPluginsBootstrapper’; nested exception is java.lang.NullPointerException 之前就出现过创建SpringBoot项目集成swagger问题,今天又遇到了,就来写一下提供一下几种解决办法。

1、bug重现 当前遇到报错的环境是:SpringBoot版本为2.7.8,集成的swagger版本为2.9.2(最新版本已经更新到3.0.0了)

//SpringBoot版本号 org.springframework.boot spring-boot-starter-parent 2.7.8 //swagger2 版本号 io.springfox springfox-swagger2 2.9.2

2、报错原因分析 SpringBoot 2.6及以上版本做了迭代,Spring Boot 2.6.X使用的是PathPatternMatcher,而Springfox 使用的路径匹配是基于AntPathMatcher的。

3、解决方案 ①方案一:更改Spring Boot 版本到2.6.x以下版本

Spring Boot版本Swagger 版本2.5.62.9.22.3.12.RELEASE2.9.2 之前创建项目时,为了项目包不冲突,创建的SpringBoot版本是 2.3.12.RELEASE,集成的swagger版本是2.9.2,这样的搭配是没有问题的。 //SpringBoot版本号 org.springframework.boot spring-boot-starter-parent 2.3.12.RELEASE //swagger2 版本号 io.springfox springfox-swagger2 2.9.2

②方案二:不更改Spring Boot 版本

Spring Boot版本Swagger 版本2.5.63.0.02.7.82.9.2 第一种组合:我是借鉴网友:https://blog.csdn.net/cxclll/article/details/126745903 但我发现里面有一个类引不进来(不知道是不是我环境的原因),出于懒,我就想到了一个折中的方法,下面讲。

新增类引用不上

第二种组合是: 当前项目 SpringBoot 版本是2.7.8,集成的 swagger 版本是2.7.0的版本。 swagger 2.7版本跟最新的也就是样式和交互上的区别,2.9.2 要更扁平化一些。 //SpringBoot版本号 org.springframework.boot spring-boot-starter-parent 2.7.8 //swagger2 版本号 io.springfox springfox-swagger2 2.7.0 然后在项目的resource目录下的 *.yaml 文件中加上:

spring.mvc.pathmatch.matching-strategy: ant_path_matcher

现在 Springboot 和 SpringCloud 的配置文件大多都是yaml文件,用上面这种输入可以自动匹配格式。


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有