【发布时间】:2018-08-13 03:45:10
【问题描述】:
我使用Android Studio 3.1.4 和android gradle plugin version 3.1.4。
之前我在模块的build.gradle中设置了buildToolsVersion "27.0.3",构建/运行没有问题。今天我安装了较新版本的build tools 并更改了build.gradle 以使用它:buildToolsVersion "28.0.2"
但是当我尝试sync project with gradle files 或rebuild project 时,它以AAPT2 错误结尾:
AGPBI: {"kind":"error","text":"error: \u003citem\u003e inner element must either be a resource reference or empty.","sources":[{"file":"<path to module>/src/main/res/values/ids.xml","position":{"startLine":16,"startColumn":4,"startOffset":752,"endColumn":55,"endOffset":803}}],"original":"","tool":"AAPT"}
....
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':<modulee-name>:mergeDebugResources'.
> Error: java.util.concurrent.ExecutionException: com.android.builder.internal.aapt.v2.Aapt2Exception: AAPT2 error: check logs for details
但我不明白是什么导致了错误。例如,出错的地址是:
<item type="id" name="bookmark">false</item>
是什么导致了这个错误,我该如何解决这个问题?
编辑
我在gradle.properties 中添加了android.enableAapt2=false,它似乎忽略了错误,但会导致此警告:
“android.enableAapt2”选项已弃用,不应使用 了。使用 'android.enableAapt2=true' 删除此警告。它 将在 2018 年底删除..
【问题讨论】:
标签: android android-studio gradle build-tools