在多模块android studio项目中集成.aar文件

arj*_*soh 5 android gradle android-studio android-gradle-plugin

我在 android studio 中有一个多模块项目,我想将一个.aar文件集成到一个模块中,该模块在 App 模块中被引用为库。项目结构为:

- module1
- module2
- module3
- module4
- moduleApp
Run Code Online (Sandbox Code Playgroud)

模块 1 用作模块 2 中的库引用。

build.gradle module2

  dependencies {
        ...
        compile project(':module1')
    }
Run Code Online (Sandbox Code Playgroud)

module2 和其他模块在 th App 模块中引用。

build.gradle moduleApp

dependencies {
    ...
    compile project(':module2')
    compile project(':module3')
    compile project(':module4')
}
Run Code Online (Sandbox Code Playgroud)

我需要在模块 1 中集成一个 .aar 文件作为库,因为它是模块 1 实现所必需的。我以正常方式进行集成:

build.gradle module1

repositories {
    flatDir {
        dirs 'libs'
    }
} 

dependencies {
    compile 'package.name.of.aar:myLibrary@aar'
}
Run Code Online (Sandbox Code Playgroud)

但是,当我运行时,gradle sync我收到错误:

failed to resolve package.name.of.aar:myLibrary@aar in module2
failed to resolve package.name.of.aar:myLibrary@aar in moduleApp
Run Code Online (Sandbox Code Playgroud)

我该怎么做才能让 module2 和 moduleApp 找到 .aar 库?我应该在他们的 build.gradle 文件中包含更多内容吗?

RaG*_*aGe 0

尝试改变

dependencies {
   compile 'package.name.of.aar:myLibrary@aar'
}
Run Code Online (Sandbox Code Playgroud)

到:

dependencies {
   compile ('package.name.of.aar:myLibrary@aar'){
      transitive=true
   }
}
Run Code Online (Sandbox Code Playgroud)

或者,只需添加:

compile 'package.name.of.aar:myLibrary@aar'
Run Code Online (Sandbox Code Playgroud)

到 module2 和 moduleApp