【问题标题】:How can I configure Android Studio to get rid of these errors?如何配置 Android Studio 以消除这些错误?
【发布时间】:2019-09-09 19:54:34
【问题描述】:

在尝试将项目导入我的 android studio 版本后,我被以下错误轰炸:

org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:processDebugResources'.
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
    at java.lang.Thread.run(Thread.java:745)

为了缓解这个问题,我将我的 android studio 项目设置为 android sdk 26,但它未能缓解这个问题。我也尝试过更新构建 gradle,但这还没有产生有希望的结果。

这是我收到错误的地方:

boolean workerStarted = false;
        boolean workerAdded = false;
        Worker w = null;
        try {
            w = new Worker(firstTask);
            final Thread t = w.thread;
            if (t != null) {
                final ReentrantLock mainLock = this.mainLock;
                mainLock.lock();
                try {
                    // Recheck while holding lock.
                    // Back out on ThreadFactory failure or if
                    // shut down before lock acquired.
                    int rs = runStateOf(ctl.get());

                    if (rs < SHUTDOWN ||
                        (rs == SHUTDOWN && firstTask == null)) {
                        if (t.isAlive()) // precheck that t is startable
                            throw new IllegalThreadStateException();
                        workers.add(w);
                        int s = workers.size();
                        if (s > largestPoolSize)
                            largestPoolSize = s;
                        workerAdded = true;
                    }
                } finally {
                    mainLock.unlock();
                }
                if (workerAdded) {
                    t.start();
                    workerStarted = true;
                }
            }
        }

我希望运行我的构建,而上面的错误消息是我得到的。

这是完整的堆栈跟踪:

org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:processDebugResources'.
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:100)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:70)
    at org.gradle.api.internal.tasks.execution.OutputDirectoryCreatingTaskExecuter.execute(OutputDirectoryCreatingTaskExecuter.java:51)
    at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:62)
    at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
    at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:60)
    at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:97)
    at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:87)
    at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:52)
    at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
    at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
    at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
    at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.run(DefaultTaskGraphExecuter.java:248)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:241)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:230)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.processTask(DefaultTaskPlanExecutor.java:123)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.access$200(DefaultTaskPlanExecutor.java:79)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:104)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:98)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute(DefaultTaskExecutionPlan.java:626)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:581)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:98)
    at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
    at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.RuntimeException: com.android.ide.common.process.ProcessException: Failed to execute aapt
    at com.android.build.gradle.tasks.ProcessAndroidResources.doFullTaskAction(ProcessAndroidResources.java:201)
    at com.android.build.gradle.internal.tasks.IncrementalTask.taskAction(IncrementalTask.java:82)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
    at org.gradle.api.internal.project.taskfactory.IncrementalTaskAction.doExecute(IncrementalTaskAction.java:46)
    at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:39)
    at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:26)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:121)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:110)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:92)
    ... 32 more
Caused by: com.android.ide.common.process.ProcessException: Failed to execute aapt
    at com.android.builder.core.AndroidBuilder.processResources(AndroidBuilder.java:867)
    at com.android.build.gradle.tasks.ProcessAndroidResources.doFullTaskAction(ProcessAndroidResources.java:194)
    ... 48 more
Caused by: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: Error while executing process C:\Users\Ahers\AppData\Local\Android\Sdk\build-tools\26.0.2\aapt.exe with arguments {package -f --no-crunch -I C:\Users\Ahers\AppData\Local\Android\Sdk\platforms\android-26\android.jar -M \\?\C:\Users\Ahers\Downloads\codecanyon-wL3wOIIS-cupid-love-dating-native-android-application\MainFile\CupidLove\Androidapp\CuipdLove_paid_feature_added\app\build\intermediates\manifests\full\debug\AndroidManifest.xml -S C:\Users\Ahers\Downloads\codecanyon-wL3wOIIS-cupid-love-dating-native-android-application\MainFile\CupidLove\Androidapp\CuipdLove_paid_feature_added\app\build\intermediates\res\merged\debug -m -J \\?\C:\Users\Ahers\Downloads\codecanyon-wL3wOIIS-cupid-love-dating-native-android-application\MainFile\CupidLove\Androidapp\CuipdLove_paid_feature_added\app\build\generated\source\r\debug -F C:\Users\Ahers\Downloads\codecanyon-wL3wOIIS-cupid-love-dating-native-android-application\MainFile\CupidLove\Androidapp\CuipdLove_paid_feature_added\app\build\intermediates\res\resources-debug.ap_ -D \\?\C:\Users\Ahers\Downloads\codecanyon-wL3wOIIS-cupid-love-dating-native-android-application\MainFile\CupidLove\Androidapp\CuipdLove_paid_feature_added\app\build\intermediates\multi-dex\debug\manifest_keep.txt --debug-mode --custom-package com.example.cupidlove -0 apk --output-text-symbols \\?\C:\Users\Ahers\Downloads\codecanyon-wL3wOIIS-cupid-love-dating-native-android-application\MainFile\CupidLove\Androidapp\CuipdLove_paid_feature_added\app\build\intermediates\symbols\debug --no-version-vectors}
    at com.google.common.util.concurrent.AbstractFuture$Sync.getValue(AbstractFuture.java:299)
    at com.google.common.util.concurrent.AbstractFuture$Sync.get(AbstractFuture.java:286)
    at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:116)
    at com.android.builder.core.AndroidBuilder.processResources(AndroidBuilder.java:865)
    ... 49 more
Caused by: com.android.ide.common.process.ProcessException: Error while executing process C:\Users\Ahers\AppData\Local\Android\Sdk\build-tools\26.0.2\aapt.exe with arguments {package -f --no-crunch -I C:\Users\Ahers\AppData\Local\Android\Sdk\platforms\android-26\android.jar -M \\?\C:\Users\Ahers\Downloads\codecanyon-wL3wOIIS-cupid-love-dating-native-android-application\MainFile\CupidLove\Androidapp\CuipdLove_paid_feature_added\app\build\intermediates\manifests\full\debug\AndroidManifest.xml -S C:\Users\Ahers\Downloads\codecanyon-wL3wOIIS-cupid-love-dating-native-android-application\MainFile\CupidLove\Androidapp\CuipdLove_paid_feature_added\app\build\intermediates\res\merged\debug -m -J \\?\C:\Users\Ahers\Downloads\codecanyon-wL3wOIIS-cupid-love-dating-native-android-application\MainFile\CupidLove\Androidapp\CuipdLove_paid_feature_added\app\build\generated\source\r\debug -F C:\Users\Ahers\Downloads\codecanyon-wL3wOIIS-cupid-love-dating-native-android-application\MainFile\CupidLove\Androidapp\CuipdLove_paid_feature_added\app\build\intermediates\res\resources-debug.ap_ -D \\?\C:\Users\Ahers\Downloads\codecanyon-wL3wOIIS-cupid-love-dating-native-android-application\MainFile\CupidLove\Androidapp\CuipdLove_paid_feature_added\app\build\intermediates\multi-dex\debug\manifest_keep.txt --debug-mode --custom-package com.example.cupidlove -0 apk --output-text-symbols \\?\C:\Users\Ahers\Downloads\codecanyon-wL3wOIIS-cupid-love-dating-native-android-application\MainFile\CupidLove\Androidapp\CuipdLove_paid_feature_added\app\build\intermediates\symbols\debug --no-version-vectors}
    at com.android.build.gradle.internal.process.GradleProcessResult.buildProcessException(GradleProcessResult.java:74)
    at com.android.build.gradle.internal.process.GradleProcessResult.assertNormalExitValue(GradleProcessResult.java:49)
    at com.android.builder.internal.aapt.AbstractProcessExecutionAapt$1.onSuccess(AbstractProcessExecutionAapt.java:78)
    at com.android.builder.internal.aapt.AbstractProcessExecutionAapt$1.onSuccess(AbstractProcessExecutionAapt.java:74)
    at com.google.common.util.concurrent.Futures$6.run(Futures.java:1319)
    at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:457)
    at com.google.common.util.concurrent.ExecutionList.executeListener(ExecutionList.java:156)
    at com.google.common.util.concurrent.ExecutionList.execute(ExecutionList.java:145)
    at com.google.common.util.concurrent.AbstractFuture.set(AbstractFuture.java:185)
    at com.google.common.util.concurrent.SettableFuture.set(SettableFuture.java:53)
    at com.android.build.gradle.internal.process.GradleProcessExecutor$1.run(GradleProcessExecutor.java:60)
Caused by: org.gradle.process.internal.ExecException: Process 'command 'C:\Users\Ahers\AppData\Local\Android\Sdk\build-tools\26.0.2\aapt.exe'' finished with non-zero exit value 1
    at org.gradle.process.internal.DefaultExecHandle$ExecResultImpl.assertNormalExitValue(DefaultExecHandle.java:382)
    at com.android.build.gradle.internal.process.GradleProcessResult.assertNormalExitValue(GradleProcessResult.java:47)

【问题讨论】:

  • 查看堆栈跟踪的其余部分,尤其是任何“Caused by”,它应该显示错误的实际原因。
  • 原因:java.lang.RuntimeException: com.android.ide.common.process.ProcessException: 无法在 com.android.build.gradle.tasks.ProcessAndroidResources.doFullTask​​Action(ProcessAndroidResources. java:201) 在 com.android.build.gradle.internal.tasks.IncrementalTask​​.taskAction(IncrementalTask​​.java:82)
  • 这就是说的原因,但它引用的文件似乎很好。
  • 编辑问题并显示 full 堆栈跟踪,而不仅仅是第一个“Caused by”。全部显示。
  • 好的,确定:)

标签: java android android-studio error-handling


【解决方案1】:

从您的堆栈跟踪中,可以猜测该错误是由于 Android 资源,或者更具体地说是由于它所说的 XML 文件中的错误,

Execution failed for task ':app:processDebugResources'

再往前走,我们可以看到-

Error while executing process C:\Users\Ahers\AppData\Local\Android\Sdk\build-tools\26.0.2\aapt.exe with arguments {package -f --no-crunch -I C:\Users\Ahers\AppData\Local\Android\Sdk\platforms\android-26\android.jar -M \\?\C:\Users\Ahers\Downloads\codecanyon-wL3wOIIS-cupid-love-dating-native-android-application\MainFile\CupidLove\Androidapp\CuipdLove_paid_feature_added\app\build\intermediates\manifests\full\debug\AndroidManifest.xml -S C:\Users\Ahers\Downloads\codecanyon-wL3wOIIS-cupid-love-dating-native-android-application\MainFile\CupidLove\Androidapp\CuipdLove_paid_feature_added\app\build\intermediates\res\merged\debug -m -J \\?\C:\Users\Ahers\Downloads\codecanyon-wL3wOIIS-cupid-love-dating-native-android-application\MainFile\CupidLove\Androidapp\CuipdLove_paid_feature_added\app\build\generated\source\r\debug -F C:\Users\Ahers\Downloads\codecanyon-wL3wOIIS-cupid-love-dating-native-android-application\MainFile\CupidLove\Androidapp\CuipdLove_paid_feature_added\app\build\intermediates\res\resources-debug.ap_ -D \\?\C:\Users\Ahers\Downloads\codecanyon-wL3wOIIS-cupid-love-dating-native-android-application\MainFile\CupidLove\Androidapp\CuipdLove_paid_feature_added\app\build\intermediates\multi-dex\debug\manifest_keep.txt --debug-mode --custom-package com.example.cupidlove -0 apk --output-text-symbols \\?\C:\Users\Ahers\Downloads\codecanyon-wL3wOIIS-cupid-love-dating-native-android-application\MainFile\CupidLove\Androidapp\CuipdLove_paid_feature_added\app\build\intermediates\symbols\debug --no-version-vectors}

我可以通过分析上面的错误信息给你以下建议,

  • 我们可以看到构建工具的版本是26.0.2。确保编译和目标 SDK 版本不高于它。尽量让它们保持相同的版本。如果项目有多个模块,则检查所有模块是否具有相同的版本。同时尝试匹配 Gradle 版本。
  • 我们可以看到 aapt 在处理 AndroidManifest.xml 文件时抛出错误,那么最可能的原因可能是该文件中的任何格式错误的条目。因此,我建议您仔细检查清单文件中的每一行(包括所有口味)。尤其要检查 Manifest 中所有风格的 3rd 方 SDK 条目的正确实施。
  • 尝试从构建菜单清理项目并使缓存无效并从文件菜单重新启动。
  • 最后但同样重要的是,尝试从 android studio 默认窗口右侧的 Gradle 工具栏构建您的应用程序。选择你的 module -> Tasks -> build -> build 。通过这样做,您可能会在运行选项卡中获得更多详细信息日志。这将帮助您快速调试。

【讨论】:

  • 再次感谢您所做的一切!
猜你喜欢
  • 2022-11-02
  • 2019-04-05
  • 1970-01-01
  • 1970-01-01
  • 2023-03-10
  • 2017-05-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多