防止支持库的Gradle依赖性被更新版本覆盖

时间:2014-11-13 19:57:57

标签: java android maven twitter android-gradle

在我的build.gradle中,我将支持库作为依赖项,如此处所示强制修订版本19。

compile 'com.android.support:support-v4:19.1.+

在修订版21中引入了Material Design支持。我不想在这种情况下使用Material Design,这很好。问题出现在Fabric SDK

的使用上

我包含他们的Maven存储库maven { url 'https://maven.fabric.io/repo' }并编译Twitter依赖项:

compile('com.twitter.sdk.android:twitter:1.0.0@aar') {
    transitive = true;
}

compile('com.twitter.sdk.android:twitter-core:1.0.0@aar') {
    transitive = true;
}

现在发生的事情是我在修订版21中获得了支持库。这里发生了什么? Fabric SDK是否使用neweset支持库?

我怎样才能强制它进入修订版19?

2 个答案:

答案 0 :(得分:9)

随意排除Android支持库并提供您自己的版本。

compile('com.twitter.sdk.android:twitter:1.0.0@aar') { 
       transitive = true; 
       exclude module: 'support-v4' 
}

确保您提供自己的版本,否则您将获得运行时错误

答案 1 :(得分:-1)

您可以将build.gradle修改为

android {
    compileSdkVersion 19
    buildToolsVersion "19.1"

另外,请确保您在SDK管理器中下载了API 19的构建工具。