代码之家  ›  专栏  ›  技术社区  ›  Arthur

springbootjar应用程序在无效目录中搜索静态资源

  •  0
  • Arthur  · 技术社区  · 6 年前

    public class WebConfiguration extends WebMvcConfigurerAdapter {
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/static/**")
                .addResourceLocations("/resources/back.office/", "/resources/front.office/");
    }
    

    我正在尝试访问

    http://localhost:8080/static/index.html
    

    但在这期间我看到了

     http://localhost:8080/static/favicon.ico
    

     \src\main\resources\front.office\resources\templates\generic\img\favicon.ico 
    

    怎么解决这个问题?

    1 回复  |  直到 6 年前
        1
  •  0
  •   lucid    6 年前

    如中所述 Spring boot documentation ,将从这些位置提供静态内容( /static , /public /resources /META-INF/resources )在类路径中。

    我建议您在参考资料中创建一个目录( /src/main/resources )命名为 public ('/src/main/resources/public/'),并将您的静态内容保存在那里,然后像这样注册。

    registry.addResourceHandler("/static/**")
       .addResourceLocations({"classpath:/resources/","classpath:/static/", 
                 "classpath:/public/","classpath:/META-INF/resources/"};
    

    在你的情况下,你可以 favicon.ico 就在public(/src/main/resources/public)内部/图标文件)应该是这样的。

    http://localhost:8080/static/favicon.ico
    

    /src/main/resources/public/x/y/z/abc.pqr ,那么它应该可以像这样访问。

    http://localhost:8080/static/x/y/z/abc.pqr
    

    我希望这有帮助。