【问题标题】:Error:Execution failed for task ':ProjectName:mergeDebugResources'. > Crunching Cruncher *some file* failed, see logs错误:任务 ':ProjectName:mergeDebugResources' 执行失败。 > Crunching Cruncher *一些文件*失败,查看日志
【发布时间】:2015-05-15 13:38:50
【问题描述】:

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

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.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

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

【问题讨论】:

  • 是 admob 广告的 ads-lib.jar 吗?
  • @ImtiyazKhalani 这是我的外部库,它包含一些用于广告的类文件。
  • 不包含任何资源文件
  • 是否有 .JPG 或 .PNG 等大写资源扩展?
  • 我认为一些资源文件的名称有问题。

标签: android android-studio android-gradle-plugin build.gradle


【解决方案1】:

here 所述,这可能在使用 Gradle Tools v1.1.0 时发生。更新到 v1.1.3 后,不再出现这种情况。

【讨论】:

  • @muetzenflo 是的,我也只在我们的 Jenkins 服务器上遇到了问题。但是对于 v1.1.3,这似乎是固定的。
  • Error:(48, 0) Gradle DSL method not found: 'classpath()' 可能的原因:项目 'Sample' 可能正在使用不包含该方法的 Gradle 版本
  • 根据答案中提到的链接,我将aaptOptions.setProperty("cruncherEnabled", false) 添加到 build.gradle Android 部分。一切正常。
  • 错误:任务“:(项目名称):mergeDebugResources”执行失败。 > 某些文件处理失败,请参阅日志了解详细信息我仍然收到此错误
  • 我在使用 Gradle 2.2.3 时遇到了同样的问题!
【解决方案2】:

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

【讨论】:

  • 工作并提醒我为每个问题重新启动窗口:P
【解决方案3】:

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

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

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

祝你好运。

【讨论】:

  • 最佳答案,在我的情况下,我有很多资源和日志并没有给我确切的文件,只是寻找损坏的 png 并再次保存它可以救我。谢谢
  • 这对我有用。如果您使用 Mac,您可以 brew install pngcheck。
  • 'xargs' 未被识别为内部或外部命令,
  • @Iman Marashi xargs 是 Unix 和大多数类 Unix 操作系统上的一个命令,用于从标准输入构建和执行命令行。您使用正确的操作系统吗?
【解决方案4】:

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

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

如果对任何人有帮助,请分享。谢谢。

【讨论】:

  • 你先生是我的英雄!你拯救了我的一天。我真的不知道这是怎么回事,但我必须感谢你
【解决方案5】:

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

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

【讨论】:

  • 我发现图像模式已经是 RGB 但是从 GIMP 执行导出确实解决了这个问题。
【解决方案6】:

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

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


我的解决方法:

  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 上的问题!

【讨论】:

  • 'com.android.tools.build:gradle:1.5.0' 也出现了同样的问题
  • Error:(48, 0) Gradle DSL method not found: 'classpath()' 可能原因:项目'Sample'可能使用了不包含该方法的Gradle版本。跨度>
  • @Kushal 如果 Android Studio Gradle 构建不起作用,请尝试使用较旧或较新版本的 Gradle。在gradle.org/gradle-download的“以前的版本”部分查看所有以前的版本!
【解决方案7】:

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

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

【讨论】:

  • @Fakher 各种方法都试过了,还是提示错误,所以我尝试将提示错误信息的文件与其他正常文件进行比较,终于让我发现了。
  • 这是我工作 2 小时后唯一对我有用的解决方案!!!谢谢@BobGao
【解决方案8】:

我也遇到过类似的错误。就我而言,它是我的drawable 文件夹中的图片文件之一。删除未使用的图片为我解决了这个问题。因此,请务必从 drawable 文件夹中删除所有未使用的项目。

【讨论】:

  • 这并没有提供问题的答案。要批评或要求作者澄清,请在他们的帖子下方发表评论 - 您可以随时评论自己的帖子,一旦您有足够的reputation,您就可以comment on any post。 - From Review
  • 这确实提供了一个答案,至少对我来说是这样。 @DawoodAwan,我知道这是指导方针和所有内容,但您的评论看起来很迂腐。更重要的是,当您要求他发表评论但没有足够的声誉来这样做时……去想一想。
【解决方案9】:

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

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

【讨论】:

    【解决方案10】:

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

    点击

    1. 文件 >> 使缓存无效/重新启动

    【讨论】:

      【解决方案11】:

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

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

      【讨论】:

        【解决方案12】:

        清理项目并重新构建它

        【讨论】:

          【解决方案13】:

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

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

          【讨论】:

            【解决方案14】:

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

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

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

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

            第 4 步 - 同步您的 gradle 文件并运行项目。这次应该没有错误了。

            【讨论】:

              【解决方案15】:

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

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

              【讨论】:

                【解决方案16】:

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

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

                【讨论】:

                • 我也遇到过,九块边框的部分像素是半透明的。
                【解决方案17】:

                我遇到了同样的问题。

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

                【讨论】:

                  【解决方案18】:

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

                  【讨论】:

                    【解决方案19】:

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

                    【讨论】:

                      【解决方案20】:

                      我也被这个问题困住了。但就我而言,我从drawable文件夹,clean and rebuild应用程序中删除所有.png图像,然后将所有.png图像粘贴到我的drawable,再次重建。对我来说效果很好。

                      【讨论】:

                        【解决方案21】:

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

                        检查构建版本是否与编译 sdk 版本匹配,并在 build.gradle 的 android 块中添加以下代码

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

                        【讨论】:

                          【解决方案22】:

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

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

                          【讨论】:

                            猜你喜欢
                            • 2015-08-26
                            • 1970-01-01
                            • 1970-01-01
                            • 1970-01-01
                            • 1970-01-01
                            • 1970-01-01
                            • 1970-01-01
                            • 2018-02-17
                            相关资源
                            最近更新 更多