SpringBoot打jar包后无法访问resource下的文件


SpringBoot打jar包后无法访问resource下的文件

项目中有一个文件需要在程序中读取,文件位置resource/word.txt 读取方式如下。

File file = ResourceUtils.getFile("classpath:word.xlsx");
InputStream inputStream = new FileInputStream(file);

在开发环境IDE中是可以正常访问的,而当打jar包发布到线上就找不到了。原因估计是springboot内置tomcat,打包后是一个jar包导致的。

解决方法

//第一种 已验证
InputStream inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream("word.txt");

//第二种
ClassPathResource classPathResource = new ClassPathResource("word.txt");
InputStream inputStream =classPathResource.getInputStream();

//第三种
InputStream inputStream = this.getClass().getResourceAsStream("/word.txt");


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM