【发布时间】:2019-12-03 13:52:43
【问题描述】:
所以我对 Spring-boot 有疑问。基本上这个想法是在资源中我有一个名为migrations 的目录,它存储需要启动的sql 脚本。它在本地机器上运行良好。但是,一旦我将项目上传到服务器,我就会收到以下错误:
Caused by: java.io.FileNotFoundException: class path resource [migrations] cannot be resolved to absolute file path because it does not reside in the file system:
大量的谷歌搜索帮助我发现了问题。它与文件在.jar 中有关,当我将目录读取为InputStream 时,如其他问题中所述,如果我指定该资源的全名,我可以获得特定文件并访问它的脚本,比如
resourceLoader.getResource("classpath:migrations/file.sql")
但是,指定这样的资源的全名并定义所有文件名不是一种选择,因为将来这个文件夹可以扩展很多,我不想手动编辑代码以将文件添加到运行中。
这个问题有什么解决方法可以让我至少从目录中读取文件名,然后一个一个地访问它们吗?
【问题讨论】:
标签: java spring-boot tomcat kotlin