声明本地jar文件作为库项目的传递依赖项

Mik*_*ren 5 android gradle android-gradle-plugin

我有一个依赖于库项目(Lib1)的Android应用(App1)。该库项目具有多个远程依赖项(例如guava,android支持库等)和两个本地依赖项,它们是存储在Lib1 / libs /中的JAR文件。

这就是Lib1的build.gradle的依赖项部分的样子:

dependencies {
  compile fileTree(dir: 'libs', include: '*.jar')

  compile 'com.android.support:support-v4:20.0.+'
  compile 'com.google.guava:guava:r08'
}
Run Code Online (Sandbox Code Playgroud)

如果我只编译该库(即gradle assemble在Lib1 /文件夹上运行),那么它将正确编译,但是当我将该库作为App1的依赖项添加时,gradle抱怨它无法在Lib1的libs /文件夹中找到两个jar。

这是App1的build.gradle:

dependencies {
  compile project(':Lib1')

  compile 'org.apache.james:apache-mime4j-core:0.7.2'
  compile 'org.apache.jackrabbit:jackrabbit-webdav:2.3.6'
  ...
}
Run Code Online (Sandbox Code Playgroud)

有没有办法告诉gradle,如果一个库依赖于本地jar文件,那么依赖于该库的项目也应该将它们包含为依赖项?远程依赖项可以正常工作,但是当libs /中有jar文件时,远程依赖项就不能正常工作。