Android引用本地aar包

生成aar包

在build.gradle文件中,apply plugin: 'com.android.library'

引用aar包

在Application和Library中引用aar有些不同。
假設(shè)aar包的名字問“test.aar”

在Application module中引用aar

  1. 將aar放到module的aars目錄下
  2. 在build.gradle中添加
repositories {
    flatDir {
        dirs 'aars'
    }
}
dependencies {
    compile(name: 'test', ext: 'aar')
}

其實(shí)aar可以放到任意目錄,只要保證和flatDir中的名字一致即可。

在Library module中引用aar

比如A是一個(gè)Libray module,B是Application module,其中B依賴A,而A又依賴一個(gè)本地的aar。
此時(shí)如果還按上面那種方法去設(shè)置,變出現(xiàn)找不到aar的錯(cuò)誤。

這是因?yàn)長(zhǎng)ibrary A不會(huì)把自己的依賴打包給B,而只是告訴B自己的依賴列表,然后由B去加載所有的依賴包。

但是由于B在自己module下的aars目錄中沒有發(fā)現(xiàn)test.aar,所有才會(huì)報(bào)錯(cuò)。
問題的關(guān)鍵,就是要告訴B,應(yīng)該如何去找test.aar。在B的build.gradle文件中,設(shè)置好正確的flatDir即可。

repositories {
 flatDir {
     dirs project(":A").file('aars')
 }
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,692評(píng)論 19 139
  • 本文原作者為:kale2010 .blog地址:http://www.cnblogs.com/tianzhijie...
    NoValue閱讀 3,742評(píng)論 0 11
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,323評(píng)論 25 708
  • 感動(dòng)里隱藏的是渴望和未被滿足的需求 。 我渴望在一起,我渴望陪伴,我渴望有一個(gè)這樣不離不棄的人永遠(yuǎn)和我在一起,無論...
    窗前的小豆豆Y閱讀 26評(píng)論 0 0
  • 寫下這個(gè)題的時(shí)候,爺爺奶奶正在打撲克牌而我在邊上靜靜的坐著。 歲月從不會(huì)放過每個(gè)人,尤其是老人家。上了年...
    十里方方閱讀 387評(píng)論 0 0

友情鏈接更多精彩內(nèi)容