resource目录下的文件下载出错 (No such file or directory)

文章讲述了作者在将本地测试正常的接口部署到线上后遇到的Nosuchfileordirectory错误,通过尝试将资源文件挂载到Docker容器解决,但嫌繁琐。最终选择修改代码,使用getClass().getResourceAsStream()获取资源流,问题得到解决。
摘要由CSDN通过智能技术生成

本地测试正常的接口发布后线上调用时报错

file:/app/xxxx/xxxx.txt(No such file or directory)

代码是这么写的

ClassLoader classLoader = getClass().getClassLoader();
File file = new File(classLoader.getResource("xxxx/xxxx.txt").getFile());
FileInputStream inStream = new FileInputStream(file);

第一时间想到的解决方案是把资源文件挂载到Docker容器中

差不多这样

docker run -v /path/to/host/directory:/data your-image

但是嫌麻烦,毕竟现在文件内容还要经常修改,每次发布还得上传文件

还是直接改代码解决问题

InputStream inStream = getClass().getResourceAsStream("/xxxx/xxxxx.txt");

问题解决

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值