打包aar时把依赖的jar打包进aar中

我们在写项目时,如果用到了第三方依赖库,一般会考虑通过仓库直接依赖或者下载到本地进行依赖

仓库直接依赖:

//A方法
implementation 'com.alibaba:fastjson:1.1.71.android'  

 

下载到本地依赖:

 

放到模块的libs包中,可以通过两种方式进行依赖

//B方法
//添加本地仓库 repositories { flatDir{ dirs 'libs' } } //依赖 implementation (name:'fastjson-1.1.71.android',ext:'jar')

  

//C方法 
implementation files ('libs/fastjson-1.1.71.android.jar')

  

 

上面A、B、C三种方法,在使用时没有区别,但是在将module打包为aar提供出去时,就会有区别

其中  A和B两种方法,打包的aar中不包含引用的三方jar,在调用方引用我们aar的时候,同时还需要引用我们aar中所用到的jar,不然就会报ClassNotFound之类的问题

C方法是直接将依赖的jar,打包到aar中,调用方使用我们aar的时候,不需要重复引用我们使用的jar,直接就可以正常使用

 

 

 

以此做记录,至于aar引入三方aar,并打包进我们自己aar中,方法还在找,后续补充

上一篇:problems during rovio build


下一篇:fastjson map,String ,json