为什么当我在gradle中设置时,我的项目总是下载appcompat v7版本23是appcompat v4版本22



我使用libgdx制作游戏,将BaseGameUltis导入我的项目中,gradle文件中的设置为:

compile "com.android.support:appcompat-v7:22.2.+"

但在文件夹BaseGameUtils\build\intermediates\explored aar\com.android.support\appcompat-v7始终版本23.0.0中,我收到了这个错误,因为我无法兼容android版本23,BaseGameUltis与android版本23不兼容:

BaseGameUtilsbuildintermediatesexploded-aarcom.android.supportappcompat-v723.0.0resvalues-v23values-v23.xml
Error:(2) Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Inverse'.
Error:(2) Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.Button.Colored'.

这是我的等级文件:

apply plugin: 'android-library'
repositories {
    mavenCentral()
}
buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.0.0'
    }
}
dependencies {
    compile 'com.android.support:support-v4:20.0.+'
    compile 'com.google.android.gms:play-services:+'
    compile "com.android.support:appcompat-v7:22.2.+"
}
android {
    compileSdkVersion 22
    buildToolsVersion "22.0.1"
    defaultConfig {
        minSdkVersion 8
        targetSdkVersion 22
    }
    productFlavors {
    }
}

我做错了什么?谢谢你的帮助。

通过删除声明末尾的加号(+)来修复对static version的依赖,如compile"com.android.support:appcompat-v7:22.2.x"`

有关更多信息,请查看渐变文档中的此处

您需要使用api 23进行编译。
更改build.gradle此行:

 compileSdkVersion 23

由于您正在使用

 compile 'com.google.android.gms:play-services:+'

您使用的是最新版本8.4.0,它与支持库v23有依赖关系。这是因为gradle使用的是v23而不是v22。

一般来说,避免在build.gradle文件中使用+是一种很好的做法,因为这样一来,您就不知道使用的依赖项是哪个版本,将来也无法重现代码。

也不要使用不同版本的支持库在您尝试使用com.android.support:appcompat-v7:22和com.android.com/support:support-v4:20的情况下。

最后,使用gradle myModule:dependencies检查模块的完整列表。

相关内容

最新更新