打包aar時把依賴的jar打包進aar中


我們在寫項目時,如果用到了第三方依賴庫,一般會考慮通過倉庫直接依賴或者下載到本地進行依賴

倉庫直接依賴:

 

//A方法
dependencies {
    ……
    implementation 'com.alibaba:fastjson:1.1.71.android'
}

  

 

下載到本地依賴:

 

放到模塊的libs包中,可以通過兩種方式進行依賴

 

 //B方法
 android {
    ……
    //添加本地倉庫 
    repositories {
             flatDir{
                dirs 'libs'
             }
     }
}
dependencies {
     //依賴
     implementation (name:'fastjson-1.1.71.android',ext:'jar')
}

  

  

 

//C方法 
dependencies {
    ……
    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中,方法還在找,后續補充


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM