【发布时间】:2015-07-18 13:14:04
【问题描述】:
我正在开发一个内部库(我们称之为“banana_lib”),它将包含在 Android 应用项目中。我想以 .aar 文件的形式将此库提供给客户。
我的库依赖于另一个库(比如说 Gson)。如果可以的话,我想避免将这个依赖的类捆绑到我的库中(“fat jar”、“uber jar”方法)。
我知道我可以要求我的库的用户在应用程序的 build.gradle 文件中包含依赖项:
dependencies {
compile 'com.google.code.gson:gson:2.2.4'
compile files('libs/banana_lib.aar')
}
但我不想让库的用户在应用程序的 build.gradle 文件中包含我的库的依赖项来增加负担。
问题: 有没有办法让 gradle 自动解析/包含 .aar 文件的依赖项?有什么方法可以让 .aar 库的用户付出最少的努力?我需要提供一对 .aar 和 .pom 文件吗?我的主要目标是减少这个库的用户必须做的事情。我觉得一个库应该理想地定义它的所有依赖项,而 gradle 应该只是在后台解决它们。
以稍微不同的方式:有没有办法允许客户/用户包含一个(内部!)库(具有外部依赖项),只需: 1.) 将 .aar 文件添加到构建中。 2.) 将其包含在 build.gradle 中。
如果有其他解决方案可以将库的用户/包含者必须做的工作量保持在最低限度,那么这也会很有趣:)
非常感谢!
【问题讨论】: