android studio build突然抛出了很多错误

时间:2014-12-26 11:44:58

标签: java android android-emulator android-studio

我已经开发了几天这个机器人了,突然之间应用程序构建有很多错误而且没有运行。下面列出了前几个错误

D:\somepath\someotherpath\app\build\intermediates\exploded-aar\com.android.support\appcompat-v7\21.0.3\res\values-v11\values.xml
Error:(50, 21) No resource found that matches the given name: attr 'android:actionModeShareDrawable'.
Error:(50, 21) No resource found that matches the given name: attr 'android:actionModeShareDrawable'.
Error:(50, 21) No resource found that matches the given name: attr 'android:actionModeShareDrawable'.
Error:(50, 21) No resource found that matches the given name: attr 'android:actionModeShareDrawable'.

下面列出了可能导致这些错误的一些事情

我尝试使用Intel HAXM加速模拟器,并使用Genymotion。我可以看到 build.gradle

的依赖关系发生了变化

build.gradle old

apply plugin: 'com.android.application'
android {
    compileSdkVersion 20
    buildToolsVersion "20.0.0"

    defaultConfig {
        applicationId "org.nirvanasoftware.donor_app"
        minSdkVersion 8
        targetSdkVersion 20
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:20.0.0'
    compile 'com.android.support:support-v4:20.0.0'
}

** build.gradle新**

apply plugin: 'com.android.application'
android {
    compileSdkVersion 20
    buildToolsVersion "20.0.0"

    defaultConfig {
        applicationId "org.nirvanasoftware.donor_app"
        minSdkVersion 8
        targetSdkVersion 20
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:21.0.3'
    compile 'com.android.support:support-v4:21.0.3'
}

依赖关系中的更改是否会导致构建错误或其他内容。

1 个答案:

答案 0 :(得分:3)

在依赖项中,您使用了appcompat-v7:21.0.3和support-v4:21.0.3

但是你的compileSdkVersion是20 buildToolsVersion是" 20.0.0"

据我所知,如果您使用compileSdkVersion 20,那么您应该使用buildToolsVersion" 20.0.0"并且支持库的版本也应该是20而不是21.如果你想使用appcompat-v7:21.0.3'和支持-v4:21.0.3'你必须使用compileSdkVersion 21和buildToolsVersion 21.x.y(这里x和y将是根据你在计算机上安装的构建工具的数字)

我不确定你的所有问题都是由此造成的。但是如果您的gradle同步出现问题,那么突然间您会遇到很多问题。因此,如果除了gradle构建文件之外没有其他错误,那么应该删除您的问题。

我的建议是,如果您想使用最新的SDK和支持库,请从Android SDK Manager安装最新的构建工具和SDK,然后使用

compileSdkVersion 21
buildToolsVersion "21.1.2"   // your latest build tools 

和像这样的依赖

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:21.0.3'
    compile 'com.android.support:support-v4:21.0.3'
}

希望它能解决你的问题。快乐的编码:D

另外:在gradle-1.0.0的最新gradle版本中,runProguard是一种不推荐使用的方法。因此,您必须使用minifyEnabled而不是使用它,并将gradle版本更新为1.0.0。