【发布时间】:2017-01-10 11:02:51
【问题描述】:
我将包含 AndroidManifest.xml 的 ADT 项目导入 Android Studio。
显示 Gradle Sync 失败如下:
Executing tasks: [:app:generateDebugSources, :app:mockableAndroidJar, :app:prepareDebugUnitTestDependencies, :app:generateDebugAndroidTestSources]
Configuration on demand is an incubating feature.
Incremental java compilation is an incubating feature.
:app:preBuild UP-TO-DATE
:app:preDebugBuild UP-TO-DATE
:app:checkDebugManifest
:app:extractProguardFiles
:app:preReleaseBuild
:app:prepareComAndroidSupportAnimatedVectorDrawable2400Library UP-TO-DATE
:app:prepareComAndroidSupportAppcompatV72400Library UP-TO-DATE
:app:prepareComAndroidSupportMediarouterV72400Library UP-TO-DATE
:app:prepareComAndroidSupportPaletteV72400Library UP-TO-DATE
:app:prepareComAndroidSupportSupportCompat2510Library UP-TO-DATE
:app:prepareComAndroidSupportSupportCoreUi2510Library UP-TO-DATE
:app:prepareComAndroidSupportSupportCoreUtils2510Library UP-TO-DATE
:app:prepareComAndroidSupportSupportFragment2510Library UP-TO-DATE
:app:prepareComAndroidSupportSupportMediaCompat2510Library UP-TO-DATE
:app:prepareComAndroidSupportSupportV132510Library UP-TO-DATE
:app:prepareComAndroidSupportSupportV42510Library UP-TO-DATE
:app:prepareComAndroidSupportSupportVectorDrawable2400Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServices1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesAds1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesAdsLite1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesAnalytics1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesAnalyticsImpl1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesAppinvite1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesAuth1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesAuthBase1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesAwareness1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesBase1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesBasement1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesCast1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesCastFramework1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesClearcut1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesDrive1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesFitness1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesGames1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesGass1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesGcm1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesIdentity1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesIid1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesInstantapps1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesLocation1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesMaps1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesNearby1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesPanorama1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesPlaces1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesPlus1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesSafetynet1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesTagmanager1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesTagmanagerApi1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesTagmanagerV4Impl1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesTasks1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesVision1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesWallet1001Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServicesWearable1001Library UP-TO-DATE
:app:prepareComGoogleFirebaseFirebaseAnalytics1001Library UP-TO-DATE
:app:prepareComGoogleFirebaseFirebaseAnalyticsImpl1001Library UP-TO-DATE
:app:prepareComGoogleFirebaseFirebaseAppindexing1001Library UP-TO-DATE
:app:prepareComGoogleFirebaseFirebaseAuth1001Library UP-TO-DATE
:app:prepareComGoogleFirebaseFirebaseCommon1001Library UP-TO-DATE
:app:prepareComGoogleFirebaseFirebaseConfig1001Library UP-TO-DATE
:app:prepareComGoogleFirebaseFirebaseCrash1001Library UP-TO-DATE
:app:prepareComGoogleFirebaseFirebaseDatabase1001Library UP-TO-DATE
:app:prepareComGoogleFirebaseFirebaseDatabaseConnection1001Library UP-TO-DATE
:app:prepareComGoogleFirebaseFirebaseIid1001Library UP-TO-DATE
:app:prepareComGoogleFirebaseFirebaseMessaging1001Library UP-TO-DATE
:app:prepareComGoogleFirebaseFirebaseStorage1001Library UP-TO-DATE
:app:prepareComGoogleFirebaseFirebaseStorageCommon1001Library UP-TO-DATE
:app:prepareDebugDependencies
:app:compileDebugAidl UP-TO-DATE
:app:compileDebugRenderscript UP-TO-DATE
:app:generateDebugBuildConfig UP-TO-DATE
:app:generateDebugResValues UP-TO-DATE
:app:generateDebugResources UP-TO-DATE
:app:mergeDebugResources
Error: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException:
:app:mergeDebugResources FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:mergeDebugResources'.
> Error: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException:
* Try:
Run with --info or --debug option to get more log output.
* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:mergeDebugResources'.
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:69)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46)
at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35)
at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:66)
at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.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:53)
at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:203)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:185)
at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:66)
at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:50)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:25)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:110)
at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:37)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)
at org.gradle.execution.DefaultBuildExecuter.access$000(DefaultBuildExecuter.java:23)
at org.gradle.execution.DefaultBuildExecuter$1.proceed(DefaultBuildExecuter.java:43)
at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:30)
at org.gradle.initialization.DefaultGradleLauncher$4.run(DefaultGradleLauncher.java:153)
at org.gradle.internal.Factories$1.create(Factories.java:22)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:53)
at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:150)
at org.gradle.initialization.DefaultGradleLauncher.access$200(DefaultGradleLauncher.java:32)
at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:98)
at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:92)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:63)
at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:92)
at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:83)
at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:99)
at org.gradle.tooling.internal.provider.runner.BuildModelActionRunner.run(BuildModelActionRunner.java:46)
at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
at org.gradle.tooling.internal.provider.runner.SubscribableBuildActionRunner.run(SubscribableBuildActionRunner.java:58)
at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:48)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:30)
at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:81)
at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:46)
at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:52)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:37)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:74)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:72)
at org.gradle.util.Swapper.swap(Swapper.java:38)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.health.DaemonHealthTracker.execute(DaemonHealthTracker.java:47)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:60)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:72)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.health.HintGCAfterBuild.execute(HintGCAfterBuild.java:41)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:50)
at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:237)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54)
at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40)
Caused by: com.android.build.gradle.tasks.ResourceException: Error: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException:
at com.android.build.gradle.tasks.MergeResources.doFullTaskAction(MergeResources.java:161)
at com.android.build.gradle.internal.tasks.IncrementalTask.taskAction(IncrementalTask.java:88)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:75)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$IncrementalTaskAction.doExecute(AnnotationProcessingTaskFactory.java:245)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:221)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$IncrementalTaskAction.execute(AnnotationProcessingTaskFactory.java:232)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:210)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:80)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:61)
... 70 more
Caused by: Error: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException:
at com.android.ide.common.res2.MergedResourceWriter.end(MergedResourceWriter.java:268)
at com.android.ide.common.res2.DataMerger.mergeData(DataMerger.java:301)
at com.android.ide.common.res2.ResourceMerger.mergeData(ResourceMerger.java:410)
at com.android.build.gradle.tasks.MergeResources.doFullTaskAction(MergeResources.java:154)
... 78 more
Caused by: java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException:
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.ide.common.res2.MergedResourceWriter.end(MergedResourceWriter.java:264)
... 81 more
Caused by: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException:
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.internal.aapt.v1.AaptV1.lambda$compile$0(AaptV1.java:446)
Caused by: com.android.ide.common.process.ProcessException:
at com.android.builder.png.AaptProcess$NotifierProcessOutput.out(AaptProcess.java:284)
at com.android.builder.png.AaptProcess$ProcessOutputFacade.out(AaptProcess.java:215)
at com.android.utils.GrabProcessOutput$2.run(GrabProcessOutput.java:143)
BUILD FAILED
Total time: 14.281 secs
还附上了我应用的 build.gradle 文件的快照。
我尝试过的事情:
- 虽然我没有看到任何严重错误,但我还是缩短了项目路径。
- 我还尝试通过更改项目根 build.gradle 中 allProjects{} 中的 build.dir 属性来提供更小的构建路径,如下所示
buildDir = "C:/tmp/${rootProject.name}/${project.name}"
我从 sdk 管理器中删除了 google play 服务。文档说 Google Repository 就足够了。最初我安装了播放服务和谷歌存储库,同样的问题发生了。后来,我删除了播放服务。
-
我从 libs 文件夹中删除了 android-support-v13.jar 并在 build.gradle 中添加了这个条目 - 编译“com.android.support:support-v13:25.1.0”。
李> 我将 build.gradle 中提到的 joda 源 jar 手动放入 libs 文件夹中,因为 Studio 没有这样做。
请帮忙。谢谢。
【问题讨论】:
-
可能是损坏的 .9.png 或者您可能手动将 .jpg 或 .bmp 重命名为 .png? :app:mergeDebugResources FAILED 我面临的错误几乎总是与资源的某些问题有关。你还在用哪个版本的gradle?
-
@ViVekH 我正在使用 gradle 版本 - 2.14.1 Android 插件版本 - 2.2.3。关于损坏的 .9.png,我可以说我从 ADT 导入了一个完美运行的项目。但是,如果这个错误总是与资源中的某些问题有关,我会检查每个 png。
-
@ViVekH 另外,我有大量资源。由于异常没有指定任何特定名称,有没有更简单的方法来找出损坏的 png?
-
已解决。我将 .9.png 文件重命名为 .png 并且构建成功。我已经添加了一个正式的答案以及总结所有这些。