无法解析:com.android.support:appcompat-v7:21.0.1

3

最近,我将mindSdkVersion更改为17,将targetSdkVersion更改为21,结果出现了许多错误。我解决了其中一些问题,但是这个问题无法解决:

Error:(28, 13) Failed to resolve: com.android.support:appcompat-v7:21.0.1

我是在 Mac 上使用 Android Studio,我的 Android Support repositories 已经安装好了。

下面是我的 build.gradle 文件:

apply plugin: 'com.android.application'


android {
    compileSdkVersion 21
    buildToolsVersion "24.0.3"
    defaultConfig {
        applicationId "com.swit.sedamaker"
        minSdkVersion 17
        targetSdkVersion 21
        versionCode 2
        versionName "1.01"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    productFlavors {
    }
}

dependencies {

    compile 'com.android.support:appcompat-v7:21.0.1'

    compile fileTree(include: ['*.jar'], dir: 'libs')
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })

    testCompile 'junit:junit:4.12'
}
3个回答

1
错误发生是因为支持库的21.0.1版本不存在。
dependencies{

//it requires compileSdkVersion 21
  compile 'com.android.support:appcompat-v7:21.0.3'
  compile 'com.android.support:appcompat-v7:21.0.2'
  compile 'com.android.support:appcompat-v7:21.0.0'

}

1
您最好匹配compileSdkVersionbuildToolsVersiontargetSdkVersion的API版本。尝试使用最新的SDK。
应用插件:'com.android.application'
android {
    compileSdkVersion 24
    buildToolsVersion "24.0.3"
    defaultConfig {
        ...
        minSdkVersion 17
        targetSdkVersion 24
        ...
    }
    ...
}

dependencies {

    compile 'com.android.support:appcompat-v7:24.2.0'
    ...
}

当然,如果您愿意,可以将targetSdkVersion设置为21。targetSdkVersion用于告知系统您已针对目标版本进行了应用程序测试,就像文档中所说的那样。
android:targetSdkVersion是一个整数,指定应用程序的API级别。如果未设置,则默认值等于minSdkVersion。该属性通知系统您已针对目标版本进行了测试,并且系统不应启用任何兼容性行为,以保持您的应用程序与目标版本的前向兼容性。该应用仍能在较旧的版本上运行(最低支持minSdkVersion)。
阅读compileSdkVersion和targetSdkVersion之间有什么区别?以了解更多信息。

0

尝试使用替换:

implementation 'com.android.support:appcompat-v7:23.3.0'

@AmirAmini,您确定要将targetSdkVersion 21保留在21吗?尝试升级到23。 - W4R10CK
谢谢,它起作用了,我还遇到其他错误,但我已经解决了。但现在我无法在模拟器上安装它。它说我的应用程序有另一个版本已安装,但这是我第一次在此模拟器上运行我的应用程序。 - Amir Amini
@AmirAmini,如果有帮助,请考虑接受答案。清理您的项目。 - W4R10CK
1
发现模拟器的存储空间已满。感谢您的帮助。 - Amir Amini

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接