2015-06-24 36 views
0

我想構建一個android庫並將其打包爲一個包含其他子庫的aar。Gradle - 將android庫與其他android庫一起使用

我有這樣一個項目:

SDK

  • mainLib
  • 力霸
  • libB

我想與力霸建設mainLib,libB內包裝mainLib.aar。 這樣我可以將mainLib分發給包含libA和libB的用戶。

我mainLib build.grade依賴塊如下所示:



dependencies 

    {
 

    compile project(‘:libA:libA-library')
 

    compile project(':libB:libB- library'')
 

 

    }

 

我已經嘗試了以上,但我看到mainLib AAR不包含力霸和libB。請幫忙。

+0

你會使用maven系統分發這些庫嗎? –

+0

@GabrieleMariotti我使用gradle腳本來構建併發布圖書館的aar到Maven中心 – nmAndroid

回答

0

這是正確的。 MainLib.aar不包含其他庫文件。

但Maven將管理正確的依賴關係。

如果你將在一個Maven發佈回購,你會看到這樣的事情:

libA.pom

<project> 
    <groupId>mygroupID</groupId> 
    <artifactId>libA</artifactId> 
    <version>X.Y.Z</version> 
    <packaging>aar</packaging> 
</project> 

MainLib.pom

<project> 
    <groupId>mygroupID</groupId> 
    <artifactId>mainLib</artifactId> 
    <version>X.Y.Z</version> 
    <packaging>aar</packaging> 

    <dependencies> 
    <dependency> 
     <groupId>mygroupID</groupId> 
     <artifactId>libA</artifactId> 
     <version>X.Y.Z</version> 
     <scope>compile</scope> 
    </dependency> 
    </dependencies> 
</project> 

這意味着,如果有人使用build.gradle

dependencies{ 
    compile 'mygroupID:mainLib:X.Y.Z' 
} 

他將下載MainLib.aar和所有其他依賴項。

相關問題