如何在另一个库中包含Android库模块?

我正在构build一个Android库,打包成一个aar并分发给第三方开发者。

结构非常简单:

项目— libraryA — libraryB

libraryA需要libraryB,这就是为什么在它的gradle文件中有这个:

compile project(':libraryB') 

和settings.gradle有

 include ':libraryB', ':libraryA' 

但是,如果我把这个项目build成一个aar,它只包含libraryA。 我错过了什么?

我读了这个回应: Android Studio如何从多个库项目打包单个AAR?

这是不可能的? 我会假设把你的代码分成多个模块是不是不好的做法?

Solutions Collecting From Web of "如何在另一个库中包含Android库模块?"

你可以试试这里发布的fat-aar.gradle脚本: https : //github.com/adwiv/android-fat-aar

这是不可能的?

正确的,至less通过标准的构build工具。 可能有第三方插件,脚本或其他配方来创buildAAR及其依赖关系中的“胖AAR”。

我会假设把你的代码分成多个模块是不是不好的做法?

拥有多个模块对于本地开发来说是完美的。 但是,模块是依赖关系。 当你运送一个库时,你需要满足所有这些依赖关系,这将包括你的任何模块。 这反过来又意味着你的库依赖的任何模块也必须是库,这样你的顶级库的使用者就能够获得这些依赖。