java Aapt 错误 Android Studio

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/49855882/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-11-03 10:28:24  来源:igfitidea点击:

Aapt error Android Studio

javaandroid

提问by Daniel.roek

I'm getting a Aapt error in all of my Android projects. When searching for an solution I found using android.enableAapt2=false could help, but i'm constantly getting errors like;

我的所有 Android 项目都出现 Aapt 错误。在寻找解决方案时,我发现使用 android.enableAapt2=false 可能会有所帮助,但我不断收到类似的错误;

Caused by: java.util.NoSuchElementException
    at com.google.common.collect.AbstractIndexedListIterator.next(AbstractIndexedListIterator.java:80)
    at com.google.common.collect.Iterators.getOnlyElement(Iterators.java:315)
    at com.google.common.collect.Iterables.getOnlyElement(Iterables.java:263)
    at com.android.builder.internal.aapt.v1.AaptV1.makePackageProcessBuilder(AaptV1.java:202)
    at com.android.builder.internal.aapt.AbstractProcessExecutionAapt.makeValidatedPackage(AbstractProcessExecutionAapt.java:67)
    at com.android.builder.internal.aapt.AbstractAapt.link(AbstractAapt.java:34)
    at com.android.builder.core.AndroidBuilder.processResources(AndroidBuilder.java:807)
    ... 56 more

I already reinstalled Android Studio, Android SDK and i tried deleting my settings files. When i'm not using android.enableAapt2=false im getting

我已经重新安装了 Android Studio、Android SDK 并尝试删除我的设置文件。当我不使用 android.enableAapt2=false 我得到

Error: java.util.concurrent.ExecutionException: com.android.builder.internal.aapt.v2.Aapt2Exception: AAPT2 error: check logs for details

    Caused by: java.util.concurrent.ExecutionException: com.android.builder.internal.aapt.v2.Aapt2Exception: AAPT2 error: check logs for details
    at com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:503)
    at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:462)
    at com.google.common.util.concurrent.AbstractFuture$TrustedFuture.get(AbstractFuture.java:79)
    at com.android.builder.internal.aapt.v2.QueueableAapt2.lambda$compile
-update all files in app.gradle its asking for. 
- update all files in build. gradle its asking for. 
- invalidate cache and restart Android studio.
(QueueableAapt2.java:136) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) ... 1 more Caused by: com.android.builder.internal.aapt.v2.Aapt2Exception: AAPT2 error: check logs for details at com.android.builder.png.AaptProcess$NotifierProcessOutput.handleOutput(AaptProcess.java:443) at com.android.builder.png.AaptProcess$NotifierProcessOutput.err(AaptProcess.java:395) at com.android.builder.png.AaptProcess$ProcessOutputFacade.err(AaptProcess.java:312) at com.android.utils.GrabProcessOutput.run(GrabProcessOutput.java:104)

I am using Android Studio 3.1.1 build 173.4697961.

我使用的是 Android Studio 3.1.1 版本 173.4697961。

edit: I also tried to clean the project, as well as running .gradlew clean, rebuild ect.

编辑:我也尝试清理项目,以及运行 .gradlew clean、rebuild 等。

edit: I'm using Gradle 4.4 and Android Studio 3.1.1. I cleared the cache and restarted, also I deleted the .gradle/cache folder from my account

编辑:我使用的是 Gradle 4.4 和 Android Studio 3.1.1。我清除了缓存并重新启动,我也从我的帐户中删除了 .gradle/cache 文件夹

采纳答案by Daniel.roek

I fixed it by reinstalling my PC. The problem was caused by having ? in my username.

我通过重新安装我的电脑修复了它。问题是由 ? 在我的用户名中。

回答by Jyot

I was getting same error, here's steps i followed to resolve it.

我遇到了同样的错误,这是我解决它的步骤。

##代码##

Aapt2 is enabled by default when you use android plugin for gradle 3.0. so open gradle.properties and add android.enableAapt2=falseas shown here https://i.stack.imgur.com/lWyT2.png

当您使用 gradle 3.0 的 android 插件时,默认情况下启用 Aapt2。所以打开 gradle.properties 并添加android.enableAapt2=false如下所示https://i.stack.imgur.com/lWyT2.png