今天更新Spring Boot到目前最新GA版本2.6.6后引发启动报了“Failed to start bean 'documentationPluginsBootstrapper'”,再往下面看到“springfox.documentation.spring.web.plugins.WebMvcRequestHandlerProvider”就可以断定是跟Swagger相关的问题。
查资料发现是新版本Spring Boot将Spring MVC默认路径匹配策略由AntPathMatcher更改为PathPatternParser,因此我们可以通过配置让其仍使用AntPathMatcher即可。
mvc:
pathmatch:
matching-strategy: ant_path_matcher #解决Failed to start bean 'documentationPluginsBootstrapper'
把Spring Boot改回旧版本也是一种解决方案。
另外还可以在启动类加个@EnableWebMvc注解来解决这个问题。
细心的话你会发现上面的截图提示我的swagger可以由2.9.2更新到3.0.0,看了源码库发现引入方式改变了,artifactId改成springfox-boot-starter了,可以移除springfox-swagger2和@EnableSwagger2注解等。
Maven:
io.springfox
springfox-boot-starter
3.0.0
Gradle:
implementation "io.springfox:springfox-boot-starter:"
最后你可能也想像我一样修改swagger默认访问URI,可以看我之前写的《修改Swagger访问URL》,这里只是改了引入方式并加个@EnableWebMvc注解和去掉@EnableSwagger2注解,其它没动。
个人网站有更多原创文章,原文链接:https://www.xubingtao.cn?p=3972
关注我的公众号为你分享各类有用信息。
更多内容请访问我的其他端: