Android gradle插件。如何自动排除重复的传递依赖项

时间:2014-11-12 23:40:32

标签: android gradle

将android build tools插件更新到0.14.1后如果发现我的构建在dexing时被重复的类崩溃了。经过一些调查,我发现它在libraryList.txt中的不同的commons-io jar中。

一个2.4我作为依赖添加的和另一个来自robospice的1.3。明确排除1.3构建后成功。然而

+--- com.octo.android.robospice:robospice:1.4.14
|    \--- com.octo.android.robospice:robospice-cache:1.4.14
|         +--- org.apache.commons:commons-lang3:3.3.2
|         \--- org.apache.commons:commons-io:1.3.2
|              \--- commons-io:commons-io:1.3.2 -> 2.4  

不应该替代它吗? commons-io:commons-io:1.3.2 - > 2.4 我错误地期望这种行为是默认的,还是只是android构建工具中的一个错误?

1 个答案:

答案 0 :(得分:0)

这不是每个人说的依赖解决问题。如果robospice库在其jar中包含commons-io v1.3.2的副本,如果您在主构建脚本中引用较新版本的commons-io,Gradle将不会自动将其删除。如果robospice jar只引用了commons-io,但没有打包它,那么你将 将它声明为主脚本中的依赖项,以便构建你的项目。 / p>

相关问题