Invalid mapping pattern detected: /**/*.css ^ No more pattern data allowed after {*...} or ** pattern element

报错:

***************************
APPLICATION FAILED TO START
***************************

Description:

Invalid mapping pattern detected: /**/*.css
^
No more pattern data allowed after {*...} or ** pattern element

Action:

Fix this pattern in your application or switch to the legacy parser implementation with `spring.mvc.pathpattern.matching-strategy=ant_path_matcher`.


Process finished with exit code 0

 

定位:

    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(alphaInterceptor) //拦截一切请求
           .excludePathPatterns("/**/*.css","/**/*.js","/**/*.png","/**/*.jpg","/**/*.jpeg") //排除访问静态资源,所有目录下的cs文件
            .addPathPatterns("/register","/login");

原因:

路径通配问题,查找发现是spring升级到5.3之后路径通配发生了变化,官方给出的解释是“In Spring MVC, the path was previously analyzed by AntPathMatcher, but it was changed to use PathPatternParser introduced in WebFlux from Spring 5.3.0.”通配符发生了变化。把/**/*.css 改为 /*/*.css即可。

    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(alphaInterceptor) //拦截一切请求
                .excludePathPatterns("/*/*.css","/*/*.js","/*/*.png","/*/*.jpg","/*/*.jpeg") //排除访问静态资源,所有目录下的cs文件
                .addPathPatterns("/register","/login");
    }

 

 

 
posted @ 2021-05-31 21:23  白清欢  阅读(5428)  评论(0编辑  收藏  举报