使用Gradle解析依赖版本控制

时间:2015-06-18 13:07:53

标签: android gradle android-gradle build.gradle

我正在开发一个Android库作为.aar,我遇到了这个问题:

使用直接依赖关系的主机应用程序版本1 并依赖于我的库使用依赖A版本2.

在构建主机应用程序时,Gradle将在默认情况下解析为更高版本。 此解析将导致主机应用程序构建的构建失败,以防依赖关系版本2不向后兼容。

有没有办法在Android中捆绑Android库的依赖关系A版本1,以便在运行时版本2可用?

1 个答案:

答案 0 :(得分:0)

如果您不希望将项目的传递依赖项带入项目,则需要将transitive标志设置为false。

您的依赖树目前看起来像这样:

app
 \- libA:1.0
 \- yourLibrary
     \- libA:2.0

由于您的应用依赖于库的1.0版本,因此您不希望在应用中使用2.0版。版本2.0是库的传递依赖项,因此在这种情况下,以下Gradle依赖项将阻止Gradle从库中提取libA:2.0

compile('com.example:yourLibrary:1.0.0') {
    transitive = false
}