Error:Execution failed for task ':ProjectName:mergeDebugResources'. > Crunching Cruncher *some file* failed, see logs

Error:Execution failed for task ':ProjectName:mergeDebugResources'. > Crunching Cruncher *some file* failed, see logs

我在尝试制作项目模块时遇到此错误

apply plugin: 'com.android.library'

android {
    compileSdkVersion 17
    buildToolsVersion "19.1.0"

    defaultConfig {
        minSdkVersion 8
        targetSdkVersion 8
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
}

dependencies {
    compile files('libs/sdk.jar')
    compile files('libs/ads-lib.jar')
    compile project(':google-play-services_lib')
    compile files('libs/hdvdecoderandroid.jar')
}

我该如何解决这个错误?

编辑

这是我的日志文件,当我尝试在命令行中构建它时

org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':hDVietAndroid:m
ergeDebugResources'.
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAct
ions(ExecuteActionsTaskExecuter.java:69)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(Ex
ecuteActionsTaskExecuter.java:46)
        at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.exe
cute(PostExecutionAnalysisTaskExecuter.java:35)
        at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(Skip
UpToDateTaskExecuter.java:64)
        at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(Valida
tingTaskExecuter.java:58)
        at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.exec
ute(SkipEmptySourceFilesTaskExecuter.java:42)
        at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute
(SkipTaskWithNoActionsExecuter.java:52)
        at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOn
lyIfTaskExecuter.java:53)
        at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute
(ExecuteAtMostOnceTaskExecuter.java:43)
        at org.gradle.api.internal.AbstractTask.executeWithoutThrowingTaskFailure(Abstra
ctTask.java:305)
        at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.ex
ecuteTask(AbstractTaskPlanExecutor.java:79)
        at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.pr
ocessTask(AbstractTaskPlanExecutor.java:63)
        at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.ru
n(AbstractTaskPlanExecutor.java:51)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPla
nExecutor.java:23)
        at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGr
aphExecuter.java:88)
        at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutio
nAction.java:29)
        at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:6
2)
        at org.gradle.execution.DefaultBuildExecuter.access0(DefaultBuildExecuter.jav
a:23)
        at org.gradle.execution.DefaultBuildExecuter.proceed(DefaultBuildExecuter.java
:68)
        at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionA
ction.java:32)
        at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:6
2)
        at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:5
5)
        at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLa
uncher.java:149)
        at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher
.java:106)
        at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.jav
a:86)
        at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.
run(InProcessBuildActionExecuter.java:80)
        at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:33)
        at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:24)
        at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildA
ctionExecuter.java:36)
        at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildA
ctionExecuter.java:26)
        at org.gradle.launcher.cli.RunBuildAction.run(RunBuildAction.java:51)
        at org.gradle.internal.Actions$RunnableActionAdapter.execute(Actions.java:171)
        at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(
CommandLineActionFactory.java:237)
        at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(
CommandLineActionFactory.java:210)
        at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValida
tionAction.java:35)
        at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValida
tionAction.java:24)
        at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandL
ineActionFactory.java:206)
        at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandL
ineActionFactory.java:169)
        at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAc
tion.java:33)
        at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAc
tion.java:22)
        at org.gradle.launcher.Main.doAction(Main.java:33)
        at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45)
        at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.jav
a:54)
        at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:35)
        at org.gradle.launcher.GradleMain.main(GradleMain.java:23)
        at org.gradle.wrapper.BootstrapMainStarter.start(BootstrapMainStarter.java:33)
        at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:130)
        at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:48)
Caused by: java.lang.RuntimeException: Crunching Cruncher vertbar.9.png failed, see logs

        at com.android.builder.png.QueuedCruncher.waitForAll(QueuedCruncher.java:178)
        at com.android.builder.png.QueuedCruncher.end(QueuedCruncher.java:190)
        at com.android.ide.common.res2.MergedResourceWriter.end(MergedResourceWriter.jav
a:128)
        at com.android.ide.common.res2.DataMerger.mergeData(DataMerger.java:291)
        at com.android.ide.common.res2.ResourceMerger.mergeData(ResourceMerger.java:48)
        at com.android.build.gradle.tasks.MergeResources.doFullTaskAction(MergeResources
.groovy:112)
        at com.android.build.gradle.internal.tasks.IncrementalTask.taskAction(Incrementa
lTask.groovy:70)
        at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:63)
        at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$I
ncrementalTaskAction.doExecute(AnnotationProcessingTaskFactory.java:235)
        at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$S
tandardTaskAction.execute(AnnotationProcessingTaskFactory.java:211)
        at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$I
ncrementalTaskAction.execute(AnnotationProcessingTaskFactory.java:222)
        at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$S
tandardTaskAction.execute(AnnotationProcessingTaskFactory.java:200)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAct
ion(ExecuteActionsTaskExecuter.java:80)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAct
ions(ExecuteActionsTaskExecuter.java:61)
        ... 47 more

我尝试在 Whosebug 中搜索,但找不到适合我的案例的正确答案。

关闭 android 工作室,然后重新打开。然后尝试编译相同的代码。 我遇到了同样的错误,它对我有用。 希望对你有帮助。

如上所述 here 使用 Gradle 工具 v1.1.0 时可能会发生这种情况。更新到v1.1.3后,这种情况就没有了

我之前在添加 png 文件时遇到过这个问题。我发现了其中一些问题,因为清理您的项目并关闭 AS 并不能解决所有问题。

我在导出图像时用 GIMP 做了一个实验。显然,将它们转换为 RGB 可以修复它。一些照片将被设置为索引模式。只需 select 图像>模式>RGB。然后,将其导出并复制到AS中。

清理项目并重新构建

除了所有答案,我认为它可能有类似的问题。我的问题是由 png.9 文件引起的。如果这个文件有一个(在我的例子中)太小的只有几个像素的拉伸区域,那么构建也会失败并出现这个错误。我已经检查了所有这些答案,但没有任何帮助。给大一点的拉伸区域,解决了这个问题。我测试了很多次,当我使用小的拉伸区域时总是失败。所以我敢肯定,它会帮助一些人把拉伸区域做大一点。

第二个问题,但这只是一个假设,是图标名称(可能也只适用于 png.9 文件)。例如,我使用了一个名为 folder_icon.9.png 的图像,而这个图像总是失败。将其重命名为 other_folder_icon.9.png,它起作用了。所以我认为有些名字是android系统本身使用的,也许这里也是一个问题。

我遇到了同样的错误,它对我有用。希望对你有帮助。

As Niklas said, you have to update to the latest Gradle version.


我的错误解决方法:

  1. 打开您的 Android Studio (AS) 程序。
  2. 转到项目中的 build.gradle 文件。
  3. 变化:

    dependencies {
        classpath 'com.android.tools.build:gradle:1.1.0'
    

    至:

    dependencies {
        classpath 'com.android.tools.build:gradle:1.1.3'
    
  4. 将您的 Android 项目与 Gradle 同步

  5. 清理你的项目。

  6. 重建你的项目。
  7. 完成!

如果还是不行:

  1. 关闭您的 Android Studio 程序并再次打开它
  2. 尝试编译代码。
  3. 完成!

如果您需要更多帮助,请阅读 Google Code 上的问题!

问题可能是由于程序员提供的扩展名类型与您应用程序的可绘制文件夹中存在的图像的实际扩展名不匹配。或按照以下步骤解决此问题:-

第 1 步 - 双击每个图像资源并检查扩展名,即图像是 png 还是 jpeg 或任何其他格式。

第 2 步 - 现在检查您是否在包资源管理器的可绘制文件夹下拉列表中提供了相同的扩展名(a.k.a Android in Android Studio)。

第 3 步 - 如果扩展名不匹配,则删除该图像并在其位置粘贴另一张同名图像,确保扩展名与图像的实际扩展名匹配(例如,如果图像是"a.png"然后确保你给的图片的扩展名也是.png类型)。

第 4 步 - 同步您的 gradle 文件和 运行 项目。这次应该不会出错了。

好的,我刚遇到这个问题并尝试了上述所有步骤但没有帮助。所以我所做的是,在将其重命名为 .png 之前,我检查了它是什么图像扩展名。在我的例子中是 .jpeg。所以我将它重新命名为 .jpeg 并将相同的原始文件保留在可绘制文件中。还有宾果游戏,效果很好。

所以解决办法是,使用文件不改变扩展名,无论是.png还是.jpeg,保持原来的方式。

如果对大家有帮助,不妨分享一下。谢谢。

我遇到了同样的错误,但我通过选择无效 caches/restart 选项解决了这个问题。

点击

  1. 文件>>使caches/restart
  2. 失效

我也遇到过类似的错误。在我的例子中,它是我 drawable 文件夹中的图片文件之一。删除未使用的图片为我解决了问题。因此,请确保从 drawable 文件夹中删除所有未使用的项目。

我来这里是因为我遇到了这个问题,而这里的答案都没有帮助我。 对于未来可以在这里得到帮助的用户:

我的问题是我为一个开关按钮做了两个 9 补丁图像。然后我在没有对它们进行 9 修补的情况下重新调整了该图像。 为了解决这个问题,我必须对所有可绘制文件夹(xxhdpi、xhdpi 等)的所有图像进行 9-patch

这可能是因为伪造的 png 文件。 您可以使用此命令检查伪造的 png。

cd <YOUR_PROJECT/res/> && find . -name *.png | xargs pngcheck

然后,使用ImageEditor(Ex, Pinta) 打开伪造的png 并重新保存为png。

祝你好运。

今天我也遇到了这个问题。这是我解决它的方法:

  1. 我构建了应用程序,然后我在消息中看到了错误 window。他们说图片(带有完整路径)格式错误。
  2. 然后我找到了名称为 xxx.9.png 的格式错误的 png。
  3. 我将其重命名为 xxx9.png 并重建。没有错误,名称下带有红色波浪的java个文件也不见了。

我遇到了同样的问题。

这是由损坏的文件引起的。如果您在出现此错误之前添加了一些新的 Drawable,请检查它们是否在 Android Studio Viewer 中正确显示。

上面的方法我都试过了,重启AS也没用,重建也没用。 最后我发现问题出在 .9.png 文件上,我删除了它们并重建了项目,它工作正常! 试试吧。

我遇到了同样的问题,但看看这张图片,我相信您可以在这种情况下找到答案...问题出在 png 文件中。当我修复 android studio 要求我的问题时,它起作用了。我希望它也适用于你。 click this photo... it shows where is the problem and what it is

我也被这个problem.But卡住了,在我的情况下,我从drawable文件夹,clean and rebuild应用程序中删除了所有.png图像,然后粘贴所有.png 图像到我的 drawable,再次重建。它对我来说很好。

有时可能是xml或资源文件命名错误造成的

至少,对我来说,这个问题通过改名解决了。

如果您有无效的 9 补丁文件,您可能会收到此错误。如果边框像素中有黑色和透明以外的任何东西,您将收到此错误。解决此问题的最简单方法是在 Android Studio 中打开它并修改边框。只需添加和删除一个像素就足够了。

值得注意的是,您不会在 AS 中看到坏像素,因为编辑器将任何非黑色设置为透明,但您需要修改文件以保存这些更改。

使用 pngcheck 并将我所有的图像文件重新保存为 *.png 后,问题仍然存在。

最后,我发现问题是关于 *.9.png 个文件。打开并检查你所有的9-Patch文件,确保所有文件都有如下黑线,如果没有,只需点击白色的地方并添加它,然后保存。

即使我遇到了同样的问题,这个解决方案帮助了我,所以它可能对你有帮助

检查构建版本是否与编译 sdk 版本匹配,并在 build.gradle

的 android 块中添加以下代码
buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

这也可能是一些额外的原因,而不是上述原因:

  • 您的图片崩溃了:您的其中一张图片无法加载
  • 将图像添加到可绘制文件夹并修改其类型(png、jpg),同时为其命名(或在可绘制文件夹中使用重命名功能)