Error: failed to find target with hash string '

2020-06-09 07:03发布

问题:

I want to change my compileSdkVersion from 23 to 21.So I have made following changes in the build.gradle but I am getting following error.How can I resolve this?

failed to find target with hash string 'android-21'

 apply plugin: 'com.android.application'

    android {
        compileSdkVersion 21
        buildToolsVersion "21.1.2"

        defaultConfig {
            applicationId "com.example.shalabh.fly"
            minSdkVersion 14
            targetSdkVersion 21
            versionCode 1
            versionName "1.0"
        }
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }
    }

    dependencies {
        compile fileTree(include: ['*.jar'], dir: 'libs')
        compile 'com.android.support:appcompat-v7:23.0.1'
        compile files('libs/httpclient-4.1-beta1.jar')
    }

回答1:

You are using

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

So you have to compile with API 23.
Change your compileSdkVersion in your build.gradle file

 compileSdkVersion 23


回答2:

Below is for Android studio 1. Go to app -> build.gradle -> change "compileSdkVersion 'installed sdk version'"

  1. Go to Tools -> Android -> sync project with gradle files

That's it, problem solved:-)



回答3:

Note: I think this might be a bug in Android Studio.


  1. Go to Project Structure
  2. Select App Module
  3. Under the first tab "Properties" change the Compile SDK Version to API XX from Google API xx (e.g. API 23 instead of Google API 23)
  4. Press OK
  5. Wait for the completion of on going process, in my case I did not get an error at this point.
  6. Now revert Compiled Sdk Version back to Google API xx.

If this not work, then:

  1. With Google API (Google API xx instead of API xx), lower the build tool version (e.g. Google API 23 and build tool version 23.0.1)
  2. Press Ok and wait for completion of on going process
  3. Revert back your build tool version to what it was before you changed
  4. Press Ok and Wait for the completion of process.
  5. Done!


回答4:

Go to you Android SDK dir and install it properly:

tools/android update sdk

or

tools/android update sdk --no-ui


回答5:

This error I also getting again and again when I import other's project. So I resolve to change some in Gradle file according to my system.

compileSdkVersion 23
buildToolsVersion "23.0.2"

Which I have already installed in my system.



回答6:

Just check android home environment variable, it should be : path/../path/sdk and not : path/.../path/sdk/tools example: android home path is : /home/username/android/sdk you should put the following lines to .bashrc file in user home directory:

 ANDROID_HOME='/home/username/android/sdk'
 PATH="$HOME:$HOME/bin:$ANDROID_HOME/tools:$PATH"
 export ANDROID_HOME
 export PATH