2017-05-20 48 views
3

我们正在创造与下面的模块的SDK项目[及其依赖下文提到]安卓:用dependentant库项目

  • 程式[Android应用程序]
  • 开发-SDK [安卓库]
  • 创建AAR
  • 开发-sdk1 [Android的库]
  • 开发-SDK2 [Android的库]

应用(的build.gradle)

dependencies { 
    compile project(path: ':Dev-sdk') 
} 

开发-SDK(的build.gradle)

dependencies { 
    compile project(path: ':Dev-sdk1 ') 
} 

开发-sdk1(的build.gradle)

dependencies { 
    compile project(path: ':Dev-sdk2') 
} 

开发-SDK2(的build.gradle)

dependencies { 
    // No Dependencies 
} 

当我尝试为“Dev-sdk”创建aar时,它没有包含依赖关系。

有没有什么方法可以为模块Dev-sdk及其所有依赖项创建AAR?

+0

据我所知,你不能将aar包含在aar中。您可能需要将所有代码从Dev-sdk1去除到Dev-sdk中。或者您可以将'Dev-sdk1'上传到'bintray'或'maven central',然后在Dev-sdk的gradle中添加依赖项。 –

回答

1

我认为你不能像你希望在项目中那样添加依赖项。 aar没有指定它们需要什么依赖关系的配置文件。您可以执行以下任一操作:

  1. 将代码从Dev-sdk1剥离为Dev-sdk。由于您是所使用的所有SDKs的开发人员,因此此选项更适合您。
  2. 或尝试上传Dev-sdk1Maven central repositoryBintray。这样,谁将会包括Dev-sdk在他的项目的人将能够轻松添加依赖于Dev-sdk1像这样的东西compile abc.fgh.jik:version
0

AAR的文件好好尝试一下包含的传递依赖。
另外它没有描述依赖关系的pom文件。

另一种方法是将库发布在maven资源库(公共或私有)中。在这种情况下,使用pom文件进行Gradle也可以下载依赖关系。