springboot打成 jar后 想修改 jar包配置文件,压缩软件手动修改后报FileNotFoundException

情况是这样公司产品要拿去演示的时候 ,万事俱备,只欠东风啊。好的!那么我们要把东风布置好,于是就在客户现场的主机上天翼云开始劈里啪啦的部署服务,启动服务。皇天不负有心人,长得帅老天还是要跟你做对哒,项目启动开始报错,请看下图:
在这里插入图片描述
我去,什么鬼,我们都是测试过的呀,本地都跑了呀,还报错是什么原因呢?

情况是这样的因为在部署Spring boot jar应用的时候,由于线上与测试环境的配置不同(例如数据库的url,kafka呀等等),有时候我们需要在对应的环境把jar(或war)包里面的配置文件替换掉。那么方案就是jar -xvf工具提取出来后哦,更改再压缩回去对于公司本地环境确实没问题,那么问题来了对于客户现场的就出现了配置文件根本没有压缩的情况,什么情况这是?

怀疑是项目打包的问题,于是把之前其他项目和出问题解压缩的jar的打包参数进行了对比,终于发现问题所在,请看下图
在这里插入图片描述
spring 官方给的解释就是 像jar -xf这种工具解压缩,无法提取已完全可执行的jar,所以在项目打包的时候注意下这个参数false设置为fasle
在这里插入图片描述
因为打包的话 ,难免部署在不同的环境 ,要变更像kafka ,数据库 api服务这些地址 所以一般是解压缩出来配置文件更改后再打包回去 不同的环境就会有特殊的问题 有些正常有些异常 excutable这个参数务必改成false 这是一个解决方案 还有一个解决方案就是jar的同级目录放一个相同的properties文件 外部的优先级会高于jar内部的 也可新建同级config目录读取 当然还可以通过参数–spring.config.location=/opt/jars/oauth/application-stg.properties指定(外面的配置文件会覆盖里面的)。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值