Android studio 3.0 Canary 6 执行 com.android.build.gradle.tasks.MergeResources$FileGenerationWorkAction 时发生故障

标签 android android-studio android-gradle-plugin android-studio-3.0

在我将 android studio 更新到 Canary 6 之前,一切都很好,当我重建或清理或其他项目时,它会抛出:

A failure occurred while executing com.android.build.gradle.tasks.MergeResources$FileGenerationWorkAction

这个错误将我引导到我的 vectors.xml [他们都得到了这个错误] .

我当前的应用级别build.gradle:

    apply plugin: 'com.android.application'

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.2"
    useLibrary 'org.apache.http.legacy'
    defaultConfig {
        applicationId "example.project"
        minSdkVersion 15
        targetSdkVersion 25
        versionCode 42
        versionName "1.3"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        //multiDexEnabled = true
    }
    buildTypes {
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }
    }
}


dependencies {

    compile 'com.android.support:appcompat-v7:25.3.1'//<-- can't update to new one
    compile 'com.android.support:design:25.3.1'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    compile 'com.android.support:support-v4:25.3.1'
    compile 'com.google.code.gson:gson:2.7'
    compile 'com.android.support:support-v13:25.3.1'
    compile 'com.android.support:palette-v7:25.3.1'
    compile 'de.hdodenhof:circleimageview:2.1.0'
    compile 'com.squareup.picasso:picasso:2.5.2'
    compile 'com.mcxiaoke.volley:library-aar:1.0.0'
    compile 'com.squareup.okhttp3:okhttp:3.0.1'
    compile 'com.android.support:multidex:1.0.1'
    testCompile 'junit:junit:4.12'
}

另外,当我尝试下载 com.android.support 库时,IDE 只是搜索 sdk,什么也不做。

我已经尝试过什么:

  • 清理并重建。

  • 使缓存失效。

最佳答案

添加多密度矢量图的好处是使用矢量而不是位图来减小 APK 的大小,因为可以针对不同的屏幕密度调整同一个文件的大小,而不会损失图像质量。对于不支持矢量绘图的旧版本 Android,Vector Asset Studio 可以在构建时将您的矢量绘图转换为每个屏幕密度的不同位图大小

 classpath 'com.android.tools.build:gradle:3.0.0-alpha8

build.gradle

android {
  defaultConfig {
    vectorDrawables.useSupportLibrary = true
  }
}

关于Android studio 3.0 Canary 6 执行 com.android.build.gradle.tasks.MergeResources$FileGenerationWorkAction 时发生故障,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45067812/

相关文章:

android - 调试从 Android 开发者控制台错误报告中提取的混淆堆栈跟踪

android - 空白的应用程序界面,由于切换到Android Studio而没有响应

android - 是否可以在 android studio 编辑器中设置图像背景?

android - 从服务器 : Proxy Authentication Required 收到状态代码 407

android - 资源条目 com.crashlytics.android.build_id 已定义 - Android Studio

android - 如何在 Firebase 中从 android 应用程序创建一个空表?

java - 在Java中传递动态类对象

java - 移动 Canvas 中所有绘制的像素

java - 如何在我的 android studio 应用程序中实现 TLS V1.1 和 V1.2?

android - 使用 gradle 包含 butterknife 时重复文件