【问题标题】:AAPT2 resources error when processing debug resources处理调试资源时出现 AAPT2 资源错误
【发布时间】:2017-12-01 23:22:24
【问题描述】:

我正在尝试切换到 AAPT2,在此过程中我遇到了此错误,但错误消息中没有提示如何修复。

gradle在任务processDebugResources时出现错误

Error:java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details

Error:java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details

Error:com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details

我不太确定问题出在哪里,因为该项目是使用 AAPT1 构建的,并且迁移指南中没有具体说明这一点。我确实有一个带有表情符号的资源,所以我的build.gradle 文件中有这个:

aaptOptions {
    additionalParameters '--utf16' // Allows emoji in XML
}

但即使我从资源中删除表情符号并删除 aaptOptions 块,错误仍然存​​在。我已经尝试过多次进行干净的构建。如果有什么不同的话,我有各种资源,包括 xml、png、ttf、txt 以及各种资产,包括 js、json、proto 和 html。 AAPT2 是否会出现这些错误?

另外,当我使用 stacktrace 运行 gradle build 时,我想我会得到一些额外的信息

Caused by: org.gradle.tooling.BuildException: Failed to execute aapt
12:40:26.699 [ERROR]`[org.gradle.internal.buildevents.BuildExceptionReporter]   at com.android.build.gradle.tasks.ProcessAndroidResources.invokeAaptForSplit(ProcessAndroidResources.java:573)`

这似乎暗示它与 apk 拆分有关,但我根本没有在我的应用程序中使用 apk 拆分。此外,有许多堆栈跟踪会导致相同的错误,但所有堆栈跟踪本身都是不同的。

这是很多信息,所以希望它足以诊断,但我个人迷路了,不确定这个问题的原因是什么。

【问题讨论】:

  • 你在你的gradle中添加了android.enableAapt2=false
  • @AndroidGeek 我不想禁用 Aapt2,我正在尝试找到这个问题的根本原因,以便我可以使用 aapt2 编译项目并获得它的好处
  • 您发布的错误应该更多。它们通常以“错误:”开头,后跟文件路径、行号和错误消息。你也可以发布这些吗?
  • 您找到解决方案了吗?

标签: android gradle android-gradle-plugin aapt android-8.0-oreo


【解决方案1】:

你试过了吗,

去你的

gradle.properties

编写以下代码并同步您的项目

android.enableAapt2=false

【讨论】:

  • 我不想禁用 Aapt2,我正在尝试找到这个问题的根本原因,以便我可以使用 aapt2 编译项目并获得它的好处
  • 你能发布你得到的整个错误吗?它应该在您发布的行的上方,它们通常以“错误:”开头,后跟文件路径、行号和错误消息。这将帮助我们确定正在发生的事情,如果没有它,恐怕信息不足。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-08-09
  • 1970-01-01
  • 1970-01-01
  • 2019-01-13
相关资源
最近更新 更多