错误:任务':ProjectName:mergeDebugResources'的执行失败.> Crunching Cruncher*某些文件*失败,请参阅日志

mr.*_*tea 53 android android-studio build.gradle android-gradle-plugin

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

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')
}
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个错误?

编辑

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

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.access$200(DefaultBuildExecuter.jav
a:23)
        at org.gradle.execution.DefaultBuildExecuter$2.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
Run Code Online (Sandbox Code Playgroud)

我尝试在stackoverflow中搜索,但我无法为我的案例找到正确的答案.

Nik*_*las 36

如前所述这里这可以通过使用摇篮工具V1.1.0时发生.更新到v1.1.3后,这种情况不再发生了.

  • 我和Gradle 2.2.3有同样的问题! (5认同)
  • 根据答案中提到的链接,我将`aaptOptions.setProperty("cruncherEnabled",false)`添加到build.gradle Android部分.一切还好. (2认同)

小智 31

关闭android studio并再次打开它.然后尝试编译相同的代码.我得到了同样的错误,它对我有用.希望能帮助到你.

  • 工作并提醒我窗口重启每个问题:P (2认同)

She*_* Li 20

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

cd <YOUR_PROJECT/res/> && find . -name *.png | xargs pngcheck
Run Code Online (Sandbox Code Playgroud)

然后,使用ImageEditor(Ex,Pinta)打开假png并将它们重新保存到png.

祝好运.

  • 这对我有用.如果您使用的是Mac,则可以安装pngcheck. (2认同)

jus*_*ing 16

好吧,我刚遇到这个问题并尝试了上面提到的所有步骤但没有帮助.所以我做了什么,在将其重命名为.png之前,我检查了它的图像扩展名.就我而言,它是.jpeg.所以我将它重命名为.jpeg并将相同的原始文件保存在drawable中.和宾果游戏,它工作得很好.

所以解决方案是,使用文件而不更改扩展名,无论是.png还是.jpeg,保持原始方式.

想分享它是否有助于任何人.谢谢.


小智 11

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

我在导出图像时进行了GIMP实验.显然,将它们转换为RGB可以修复它.某些照片将设置为索引模式.只需选择图像>模式> RGB.然后,导出它并将其复制到AS中.


Sur*_*yaa 10

我得到了同样的错误,它对我有用.希望能帮助到你.

正如Niklas所说,你必须更新到最新的Gradle版本.


我解决错误的方法:

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

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

    至:

    dependencies {
        classpath 'com.android.tools.build:gradle:1.1.3'
    
    Run Code Online (Sandbox Code Playgroud)
  4. 将您的Android项目与Gradle 同步: 在此输入图像描述

  5. 清理您的项目.

  6. 重建您的项目.
  7. 完成!

如果它还没有工作:

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

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

  • 同样的问题出现在''com.android.tools.build:gradle:1.5.0'中 (11认同)

小智 6

我也遇到过类似的错误.在我的情况下,它是我的drawable文件夹中的一个图片文件.删除未使用的图片解决了我的问题.因此,请务必从drawable文件夹中删除所有未使用的项目.


Bob*_*Gao 6

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

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

9补丁