2015-03-31 202 views
0

我想为项目A生成一个发布APK。它对2个导入的库B和C也有我的依赖。 B也对C有依赖关系。 这造成了A编译C和B编译c的情况。 这是错误:Android循环gradle依赖关系

java.io.IOException: The same input jar [/Users/Jon/android-app-manager/app/libs/**] is specified twice.

怎么可能让gradle这个知道的依赖已经编译?

回答

1

有一个在你的描述没有循环依赖:

项目A - > LibB - >的LibC

摇篮可以管理transitive dependencies。所有你需要做的是:

  • 声明编译依赖关系中的LibC LibB(你已经这样做)
  • 宣布在项目A编译依赖于LibB(你已经这样做)
  • 取出明确在ProjectA中声明对LibC的依赖(Gradle会自动找到这个传递依赖项)