若依集成knife4j的时候出现No mapping for GET /doc.html
若依集成knife4j的时候出现No mapping for GET /doc.html
·
出现这种情况可能是项目中含有继承WebMvcConfigurationSupport的类,我们知道在配置拦截器时,可以选择WebMvcConfigurationSupport,或者是WebMvcConfigurer,但是使用前者会导致自动配置失效,即WebMvcConfigurationSupport会使Spring Boot的WebMvc自动配置失效,导致视图解析器无法解析并返回到对应的视图。因为在 springboot的web自动配置类 WebMvcAutoConfiguration 上含有条件注解@ConditionalOnMissingBean(WebMvcConfigurationSupport.class)有关。该注解表示在项目类路径中如果没有WebMvcConfigurationSupport类型的bean时,自动配置类才会生效,
这时候就需要重新指定静态资源
对应的knife4j的Ui图路径如下(classpath:/META-INF/resources/)。我们只需增添一条即可。
所以总的来说当不需要返回逻辑视图,可以选择继承WebMvcConfigurationSupport,如果需要返回逻辑视图,可以选择实现WebMvcCofigurer,重写addInterceptor方法,或者重写WebMvcConfigurationSupport相应的方法。
更多推荐
已为社区贡献1条内容
所有评论(0)