更新SpringBoot到2.6.6后引发启动时报Swagger问题

今天更新Spring Boot到目前最新GA版本2.6.6后引发启动报了“Failed to start bean 'documentationPluginsBootstrapper'”,再往下面看到“springfox.documentation.spring.web.plugins.WebMvcRequestHandlerProvider”就可以断定是跟Swagger相关的问题。

更新SpringBoot到2.6.6后引发启动时报Swagger问题_第1张图片

查资料发现是新版本Spring Boot将Spring MVC默认路径匹配策略由AntPathMatcher更改为PathPatternParser,因此我们可以通过配置让其仍使用AntPathMatcher即可。

mvc:
  pathmatch:
    matching-strategy: ant_path_matcher #解决Failed to start bean 'documentationPluginsBootstrapper'

更新SpringBoot到2.6.6后引发启动时报Swagger问题_第2张图片 

把Spring Boot改回旧版本也是一种解决方案。

另外还可以在启动类加个@EnableWebMvc注解来解决这个问题。

更新SpringBoot到2.6.6后引发启动时报Swagger问题_第3张图片

细心的话你会发现上面的截图提示我的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:"

更新SpringBoot到2.6.6后引发启动时报Swagger问题_第4张图片 

更新SpringBoot到2.6.6后引发启动时报Swagger问题_第5张图片

最后你可能也想像我一样修改swagger默认访问URI,可以看我之前写的《修改Swagger访问URL》,这里只是改了引入方式并加个@EnableWebMvc注解和去掉@EnableSwagger2注解,其它没动。

个人网站有更多原创文章,原文链接:https://www.xubingtao.cn?p=3972

关注我的公众号为你分享各类有用信息。

更多内容请访问我的其他端:

你可能感兴趣的:(经验,Java,问题记录,SpringBoot2.6.6,Swagger3.0.0,AntPathMatcher,EnableSwagger2,EnableWebMvc)