对于属性“resourceFile”指定的\ build \ intermediates \ res \ resources-anzhi-debug-stripped.ap_'不存在

时间:2016-04-11 05:47:13

标签: android android-gradle android-studio-2.2 android-gradle-2.2

我将Android Studio更新为2.0版。构建失败并且还需要比Android Studio 1.5版构建更长的时间。每次运行我的应用程序时,我都会清理并重新加载项目,但这没用。错误消息是:

  指定了

\ build \ intermediates \ res \ resources-anzhi-debug-stripped.ap_'   属性'resourceFile'不存在。

6 个答案:

答案 0 :(得分:55)

如果您在构建release版本时遇到此问题,请注意,Gradle 2.2.0(及更高版本)的Android插件似乎有shrinkResources的错误

gradle降级为2.1.3以获得临时解决方案:

classpath 'com.android.tools.build:gradle:2.1.3'

修改

我向wojtek.kalicinski(谷歌的Android Developer Advocate)报告了这个问题。

事实证明,shrinkResources只有在minifyEnabled设置为true时才有效。 Android插件的2.1.3版本只是忽略了这个问题(并且无法shrinkResources无声地)。 2.2.0+让你知道错误有问题(错误本身并不真实)。谷歌可能会在将来为这种情况引入更好的错误信息。

这里是twitter conversation

答案 1 :(得分:30)

可能你正在缩减资源,同时避免缩小:

minifyEnabled false
shrinkResources true

如果要缩小资源,则必须启用缩小:

minifyEnabled true
shrinkResources true

旧版本的Build Tools忽略了这个问题,但它开始在Build Tools 2.2.3上抛出编译问题

此处提供更多信息:https://developer.android.com/studio/build/shrink-code.html#shrink-resources

答案 2 :(得分:21)

shrinkResources 设置为false。它对我有用

buildTypes {
    release {
        minifyEnabled false
        shrinkResources false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        debuggable false
        jniDebuggable false
        zipAlignEnabled true
    }
}

答案 3 :(得分:1)

  1. 我们可以同时使用Instant Run和shrinkResources;
  2. 请注意,我们不能同时使用Jack和shrinkResources(与ProGuard相同,minifyEnabled)

答案 4 :(得分:1)

根据@ Bartek-lipinski的帖子的建议,我已经在我自己的项目中确认将Gradle插件降级到v2.1.3将解决获取"InvalidUserDataException: File specified for property does not exist."的问题

我已经向Android工具bugtracker website提交了一个错误,请提出更多信息,以便更好地了解问题。

答案 5 :(得分:0)

在我的项目中,因为我在gradle shrinkResources中添加了,删除了Ok。