美文网首页
spring boot 导出static下的静态文件报错(类加载

spring boot 导出static下的静态文件报错(类加载

作者: 后山野鹤 | 来源:发表于2021-06-03 16:16 被阅读0次

导出代码核心部分用的是
String filePath = getClass().getResource("/static/template.xls").getPath();
FileIntputStream intputSream = new File(filePath);

上述代码在本地开发环境测试,一切正常,文件也可以正常的导出。
但是将程序打包成jar时,使用java -jar XXX.jar 启动jar,
当导出时,程序报错,
报错信息如下:
java.io.FileNotFoundException, 文件查找不到

后来经仔细对比发现,springboot框架导出的jar, resources/static下的静态文件都会被编译在BOOT-INF文件夹下

解决方案:使用spring 提供的资源加载器
ClassPathResource r = new ClassPathResource("/static/template.xls");
InputStream inputStream = r.getInputStream();
完美解决问题,
在本地开发环境和测试环境的java -jar XXX.jar 启动,都可以正常的导出文件

相关文章

网友评论

      本文标题:spring boot 导出static下的静态文件报错(类加载

      本文链接:https://www.haomeiwen.com/subject/jwbzsltx.html