Android Studio - mergeDebugResources异常

NOl*_*eto 54 android gradle android-studio

我最近将Android Studio更新为它的最新版本,现在我在Gradle构建中遇到异常问题.

每次我运行项目,成功之前两到三次,我都会收到以下错误:

Gradle: Execution failed for task ': ProjectName:
mergeDebugResources'.
Java.lang.NullPointerException (no error message)
Run Code Online (Sandbox Code Playgroud)

再次尝试几次后,错误不会再次发生,直到下一次运行.

有没有人知道为什么会这样?该项目工作得很好,直到更新,从未出现过任何错误......

谢谢!

小智 52

只有在修改项目中的XML文件时才会发生这种情况.如果在运行(Build> Rebuild Project)之前重建整个项目,它将不再显示.

  • 我希望他们很快解决这个问题,在一个大项目上,重建一切都是痛苦的:/ (4认同)
  • 删除构建文件夹并重建:-) (4认同)

Joã*_*ete 30

在项目目录中,运行:

./gradlew clean build
Run Code Online (Sandbox Code Playgroud)

或者从Android Studio中选择:

Build > Clean Project
Run Code Online (Sandbox Code Playgroud)

更新:正如@VinceFior在下面的评论中指出的那样

  • 我通过选择Build> Clean Project在Android Studio中访问了它. (9认同)

And*_* F. 19

你的drawables目录中可能有一个损坏的.9.png


小智 16

如果生成的构建文件路径超过255个字符的Windows最大路径长度,也可能发生此错误.确保您的项目路径不是太长,也使用短名称.


Lor*_*ica 12

我找到了问题的解决方案.

报告有关gradle构建问题的问题,它不一样,但解决方案似乎也解决了mergeResourceDebug问题.(在此处发布https://code.google.com/p/android/issues/detail?id=56158).在评论中说明解决方案在Gradle 0.4.3中得到解决.

要使用Gradle 0.4.3,需要手动更新build.gradle文件.(更新Android Studio不会更改构建文件)

这是我在build.gradle中更改的内容:

dependencies {
    classpath 'com.android.tools.build:gradle:0.4.3'
}
Run Code Online (Sandbox Code Playgroud)

自从改变这个以来,我在运行项目时没有看到任何更多的mergeDebugResource问题.希望这可以帮助!

编辑:要与Gradle保持同步,您可以将版本号更改为0.4.+