繁体   English   中英

在Spring Boot的/ resource /目录下找到静态文件

[英]Locate static files under /resource/ directory in Spring Boot

我有一个带有嵌入式Tomcat的Spring Boot应用程序,正在通过Netbeans测试。 在目录src / main / resources /下,我有两个包含静态文件的文件夹。 我正在尝试使用这些文件,但该程序似乎认为文件夹为空。

这是我编写的一些代码,用于测试目录并查看它们是否包含任何文件。

    pathToFiles = "/resources/";

    if(true)
    {

        File kmlDirectory = new File(pathToFiles + "waitingKML/");

        Collection<File> files;
        files = FileUtils.listFiles(
                kmlDirectory,
                new RegexFileFilter("^(.*?)"),
                DirectoryFileFilter.DIRECTORY
        );

        if(files.isEmpty()) {

            return "Files are empty: " + kmlDirectory.toString();
        }
        else
            return "Files are NOT empty";
    }

这是我的目录结构的图片(从Netbeans查看)。

在此处输入图片说明

当我运行此测试代码时,我得到' 文件为空:\\ resources \\ waitingKML '。

在此处输入图片说明

根据此处找到的文档https://spring.io/blog/2013/12/19/serving-static-web-content-with-spring-boot,Spring Boot将自动添加位于以下任意位置的静态Web资源目录:

  • / META-INF /资源/
  • /资源/
  • /静态的/
  • /上市/

我想知道这是否与任何属性文件或我的配置/设置有关?

这完全取决于程序当前的工作目录是什么。 通常在IDE中,它将成为项目的根目录,而不是src / main,因此找不到它。

一旦部署了WAR,您需要确保资源被正确打包(无法告诉您要打包的内容),而不是原始文件访问,需要使用ClassLoader.getResourceAsStream()之类的东西来获取静态文件

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM