簡體   English   中英

在 Android 庫項目中包含 AAR 依賴項

[英]Include AAR dependency in Android Library Project

在我的 Android Studio Gradle 項目中,我使用了幾個庫,而一個庫應該使用本地 AAR 文件作為依賴項。 我使用流行的解決方案將 AAR 文件作為依賴項包含到我的庫項目中:

flatDir {
    dirs 'libs'
}

compile(name: 'aar-library', ext: 'aar')

當我現在嘗試同步時,我收到錯誤消息

無法解決:依賴“aar-library”

在我的主項目中,即使我沒有在那里使用/引用 AAR 文件。 如果我只是將 AAR 文件復制到我的主項目的 libs 文件夾中,它也可以工作。 任何的想法?

已經找到解決辦法了。 看起來 AAR 依賴項都移到了一起,因此主項目嘗試在其“libs”目錄中解析 A​​AR 依賴項,而該目錄顯然不存在。 您需要做的是更准確地定義依賴於帶有 AAR 文件的庫的每個模塊可以相對於其路徑找到它的位置,例如

dirs project(':my-library-project').file('libs')

我讓它像這樣工作:

compile 'com.example.lib:lib_name:1.0.0@aar'

在這個例子中lib_name:1.0.0.aar是文件名。

我想將我的 AAR 文件添加到我的庫項目中。 我不得不將它添加到我的圖書館項目的 gradle 中

implementation(files("libs/sublibrary.aar"))

我的“libs”文件夾位於 myLibraryName/libs。

我還必須將以下內容添加到我的 Main 項目的 gradle 中

implementation(files("../myLibraryName/libs/sublibrary.aar"))

然后我同步了,它奏效了。

如果 user1033552 的回答不起作用。 就我而言,它不起作用。

以下步驟對我有用。

  1. 右鍵項目->新建->模塊->導入aar包->選擇文件並導入。
  2. settings.gradle 中,依賴在依賴之后。例如include ':imported-aar', ':your-library', ':app'
  3. 現在build.gradle of your-library add compile project(':imported-aar')

暫無
暫無

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

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