gradle 项目打包成多个jar包_gradle 打包时第三方jar包,静态文件处理问题

问题

今天新开的项目第一版代码完成了,主要就是对接第三方接口,写定时任务跑数据,由于之前都在本地跑,所以打包的问题一直没有出现。打包后主要问题有两个:

  1. 引入的第三方jar包,无法打包到项目jar包中

  2. 第三方接口的鉴权文件代码中使用getResource获取不到

第三方jar包

由于使用gradle打包,所以它并不会主动将第三方jar包打进去,我目前的文件结构:

a9bd1242aec9aebec644b923958851d5.png

第三方jar包位于lib目录下,解决方案:

compile fileTree(dir: 'lib', include: ['*.jar'])

在build.gradle 的dependencies下加上这段就可以了。

静态文件处理

由于调用第三方接口,很多接口都需要进行鉴权,鉴权的方式普遍有两种:

  1. 通过账号密码获取token,然后将token放到请求头中

  2. 通过第三方给的license文件,通过调用他们封装的http客户端进行解码,获取权限。

由于在编码过程中,遇到了第二种情况,打包后的jar中确实存在license文件,但是通过getResource去获取的时候为空,我就感觉可能打包后,文件的相对位置改变了。

我想到一个办法,将license文件放到服务器的某个地方,比如/opt/data_monitor/auth.lic中,这样通过这个地址去获取文件,就不用考虑文件在jar包里的相对位置了。

后语

接触gradle一年多了,以前打包都是借助Jenkins+Git,从来没考虑过自己去打包的问题,这次暴露出来的问题很多,但是我更强了不是吗?9f4243d4ab40b5dbdf6c22bc78026f0c.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值