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