【问题标题】:Some file crunching failed, see logs for details某些文件处理失败,请参阅日志了解详细信息
【发布时间】:2016-04-08 09:21:47
【问题描述】:

今天我得到了 android studio 2.0 稳定版的更新。

我更新它并重新启动。

然后,当它打开我现有的项目时,它要求我将我的 gradle 插件更新到 2.0,以便为我当前的 android studio 2.0 项目获得 “即时运行” 和其他功能的优势

所以我更新它并设置为

类路径'com.android.tools.build:gradle:2.0.0'

但是当我清理项目时,它给了我以下错误

AAPT 错误(1961798984 的外观):libpng 错误:读取错误。

错误:任务 ':app:mergeDebugResources' 执行失败。

部分文件处理失败,详见日志

我尝试修复了很多次,但都没有解决。

谁能知道这个错误的原因是什么?

【问题讨论】:

  • 我的 .9.png 文件出现了处理问题。你有吗?
  • 在更新到 android studio 2.0 和 gradle plugin 2.0 之前它工作得很好。
  • 你有任何.9.png 文件吗?
  • 是的,我的项目中有这么多 9 个补丁图像
  • 那么你应该在没有它们的情况下尝试一次

标签: android gradle-plugin android-studio-2.0


【解决方案1】:

您可以尝试将其添加到您的应用 build.gradle 文件中

 android {
    aaptOptions {  
                cruncherEnabled = false  
            } 
        }

【讨论】:

  • 这样做有助于暴露不正确的引用和文件以进行修复。确保清除缓存并重建。
  • 由于 png 文件损坏,对我不起作用,我不得不在 tinypng.com 中重新转换它们
  • 是的,已修复。但是不知道这个..你能解释一下吗?
  • aapt 工具不会收缩包含在 assets/ 文件夹中的 PNG 文件。图像文件需要使用 256 或更少的颜色,以便 aapt 工具对其进行优化。 aapt 工具可能会膨胀已压缩的 PNG 文件。为了防止这种情况,您可以使用 Gradle 中的 cruncherEnabled 标志来禁用 PNG 文件的此过程:
【解决方案2】:

我过去遇到过这个问题,只是将版本降下来。今天当我升级到 AS 2.0 时,我遇到了同样的图像问题。我确实必须找到违规图片(我的案例中有 2 张)并让我的设计师重新导出它们。

这是我的诊断方法(我在 mac 上仅供参考):

./gradlew :app:mergeIntegrationDebugResources --debug > buildLog.txt

完成后,我打开 buildLog.txt 文件并搜索“错误”(实际搜索中没有引号)。我看到哪个文件有问题,然后将其从相应的文件夹中删除,然后重新运行上面的命令,直到我没有收到任何错误。

然后我将有问题的文件发送给我的设计师并让它们重新导出。

希望这会有所帮助!

【讨论】:

    【解决方案3】:

    我遇到过几次这个问题。我发现的问题是资产已损坏或文件扩展名错误。就我而言,这通常是我从艺术部门获得的损坏图像。一旦我删除了有问题的文件,一切都会编译并运行得很好。

    基本上,Android 正在尝试压缩和格式化资产和资源,但如果其中一个已损坏,则会失败。

    因此,请尝试删除任何最近添加的资产或资源。

    【讨论】:

      【解决方案4】:
      aaptOptions {
              cruncherEnabled = false
      }
      

      将以上行添加到您的应用程序模块 build.gradle

      清除构建缓存 与清除项目的 build/ 目录的 Android 插件的 clean 任务类似,您可以运行 cleanBuildCache 任务来清除项目的构建缓存。如果项目为其构建缓存指定了非默认目录,则从该项目运行任务只会清除该缓存(而不是默认位置中的共享缓存)。要执行任务,请从菜单栏中选择查看 > 工具窗口 > 终端并使用以下命令之一:

      在 Windows 上:

      gradlew cleanBuildCache
      

      在 Mac 或 Linux 上:

      ./gradlew cleanBuildCache
      

      【讨论】:

        【解决方案5】:

        在我的情况下,它是其中一个文件夹中大小为 0 的 png。

        【讨论】:

          【解决方案6】:

          我有同样的问题。

          在我的情况下,它是在我将 9-patch 文件添加到项目后发生的。

          问题:图像周围的补丁之一丢失。

          修复:双击 9-patch 文件。 确保在所有侧面(上、下、右、左)设置补丁。

          在我的情况下,这是我尝试了很多事情后唯一的解决方案

          【讨论】:

            【解决方案7】:

            请在 build.gradle (Module:app) 的 android {} 中添加以下代码

            aaptOptions {  
                            cruncherEnabled = false  
                        } 
            

            PFA截图App Gradle Build

            【讨论】:

              【解决方案8】:

              在粘贴到可绘制文件夹时不要更改文件扩展名...由于该更改可能会出现一些错误(例如: logo.PNG 到 logo.png )...为避免此类问题,您应该先编辑扩展名粘贴到drawable中。

              【讨论】:

                【解决方案9】:

                我使用此代码。它对我非常有效。

                android {
                aaptOptions {  
                            cruncherEnabled = false  
                            } 
                   }
                

                【讨论】:

                  【解决方案10】:
                  simple answer works for sure....
                  
                  just add below code in the build.gradle(Module:app) of your project:
                  
                  android {
                      aaptOptions {
                          cruncherEnabled = false
                      }
                  }
                  
                  example:
                  

                  100% 有效...@Ambilpur

                  【讨论】:

                    【解决方案11】:

                    这个问题一般是资源文件里面的错误导致的,

                    部分文件处理失败,详见日志

                    大多数时候我们一直只看到此消息,但为了更好地诊断,请删除文件夹 /build 及其包含在您的项目中,然后真正的问题将显示:

                    【讨论】:

                      【解决方案12】:

                      将 build.graddle 文件中的 gradle 版本降低到 1.3.0

                       dependencies {
                          classpath 'com.android.tools.build:gradle:1.3.0'
                       }
                      

                      【讨论】:

                      • 更新前已经设置为 1.3.0,在 1.3.0 版本中运行良好,但我想迁移到 gradle 2.0.0
                      • 你不能只是降低你的 gradle 版本,因为这样做可能会导致大量的代码重构。
                      猜你喜欢
                      • 1970-01-01
                      • 1970-01-01
                      • 1970-01-01
                      • 2017-11-17
                      • 2016-09-04
                      • 2013-09-21
                      • 1970-01-01
                      • 1970-01-01
                      • 1970-01-01
                      相关资源
                      最近更新 更多