java项目中打成jar包部署到Linux下读取文件失败

java项目中打成jar包部署到Linux下读取文件失败

java项目中打成jar包部署到Linux下读取文件失败

问题描述:最近在测试新的设计方案,简单来说就算业务上游的人通过MQ给我这边传一个json,为拿到之后会提取出需要的信息,然后在为这进行相关处理,最后给数据库插入一条数据。然后业务下游的人通过查这个表继续进行业务处理。就是这么一个简单的过程,但是在自己电脑上的ide开发的时候没问题,部署到服务器上测试的时候每次都是在插入的数据库里有个字段的内容为空。

问题原因:忙了几天最后从日志里看到,是因为项目打成jar包后在linux下读取文件失败了。之前没有k8s 的权限看不到,日志,今天让别人帮我下载了,看了日志后,很快定位定位到问题,之前也猜想过是不死linux下读取文件的权限不够,后来原因是Linux下读取文件失败了,那个字段需要读取文件里的内容,然后在做处理
解决方案:最终定位到问题了,可是解决问题还是个难题,在windowsxia的文件路径和linux的不一样,原来要读取的文件存放项目的根目录下,试了好多方法读取怎么也读不到,后来索性就把文件都放到了springboot项目的resources文件下面,这样读取起来方便,要读取的那些文件也都是些静态的文件,数量固定。这里有个坑就算springboot读取resources下的文件有多种方法,要注意那些是在linux下无效的。
下面是处理的简单代码

/********************************
     *
     * @Description  读取文件,避免了在linux下 classpath 不起作用问题
     * 
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值