簡體   English   中英

在Android庫中包含外部模塊aar

[英]Include external module in Android Library aar

我有一個簡單的Android庫build.gradle文件(刪除了不相關的部分),

apply plugin: 'com.android.library'

repositories {
    maven { url 'https://dl.bintray.com/alexeydanilov/maven' }
}

dependencies {
    compile 'com.danikula:videocache:1.0.1'
}

我希望能夠構建一個Android庫.aar ,它包含我想要的所有文件,還包括從videocache外部模塊下載的所有文件。

我嘗試了很多不同的技術來實現這個目標(另一個項目,更改'傳遞'的設置,嘗試'export = true')但是所有這些都被證明是不成功的,我不確定我還能嘗試什么。

如果我下載源.jar文件將其放入libs,將必要的位添加到設置文件中,它正確打包到.aar ,但我似乎無法通過引用外部模塊找到任何方法這個。

首先,不建議將外部lib包含在aar文件中。 之前的答案可以在這里找到:

我引用如下文字:

使用神器不會將其包含在AAR。 使用遠程工件的重點是不依賴於jar而是依賴於工件地址,以便使用“aar”的項目可以解析其所有依賴關系圖,查找重復項,解決沖突等...

如果您在Maven上發布'aar',則工件POM將包含依賴項。 如果您在多項目設置中使用它,生成'aar'的項目會將這些依賴項發送到引用它的項目。

對於本地jar,因為那些無法知道jar文件是什么,我們必須在本地打包它,但如果你要將'aar'提交給工件倉庫,那么這不是你應該使用的東西。

因此,如果要包含並使用來自遠程倉庫的“aar”庫,可以先將其發布,然后將此行添加到依賴項中:

compile 'Replace with the link to your lib'

如果你想使用來自本地的'aar'文件,那么還有一個不太完美但工作的方式來包含所有外部庫,這只是復制這一行:

compile 'com.danikula:videocache:1.0.1'

使用lib的項目中的依賴項。 但無論如何這不推薦。

希望我的回答可以幫到你。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM