Android Studio 3.1编译时出错:

org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:mergeDebugResources'.    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)
Caused by: Error: java.util.concurrent.ExecutionException: com.android.builder.internal.aapt.v2.Aapt2Exception: AAPT2 error: check logs for details    at com.android.ide.common.res2.MergedResourceWriter.end(MergedResourceWriter.java:332)    at com.android.ide.common.res2.DataMerger.mergeData(DataMerger.java:301)    at com.android.ide.common.res2.ResourceMerger.mergeData(ResourceMerger.java:412)

根据网上说的添加了android.enableAapt2=false,一开始都OK后来创建新项目又出了问题:

org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:transformDexWithInstantRunDependenciesApkForDebug'.    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)

根据查找说是修改一个Android Studiio 一个配置就可以,取消选中Enable Instant Run :

修改之后真的可以运行了,但取消这个选中之后编写代码会非常麻烦,资源文件的引用非常麻烦,需要手写,还需要重新编译才能看出是否正确。

java.lang.RuntimeException: com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: Failed to execute aapt    at com.android.builder.profile.Recorder$Block.handleException(Recorder.java:55)    at com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:104)

最后查看log感觉还是aapt的问题,果然把android.enableAapt2=false 改为true就可以了。

附:一个提示编译时错误的方法 gradlew compileDebugJavaWithJavac

补充一下,在家打开发现编译失败 根据gradlew mergeDebugResources发现.gradle/cache下兼容包里的图片和一些第三方库中的图片或者资源文件找不到,发现是路径上有中文名称的问题,该用户名就太麻烦了,可以把.gradle文件拷贝出来,再在Android Studio中设置:

更多相关文章

  1. python list.sort()根据多个关键字排序的方法实现
  2. 动态库so打包到android apk
  3. android上用opengl画线
  4. update android api
  5. android代码实现自动关机
  6. Android根据不同语言切换图片
  7. Android编译系统一
  8. android 命令行创建工程
  9. xpose框架使用android studio

随机推荐

  1. Apache Ant 环境开发Android应用 二
  2. Gradle DSL method not found: 'android(
  3. Android中监听语言变化的两种方式
  4. android opengl floatbuffer
  5. Android实现横竖屏、全屏的几种方式
  6. Android Audio代码分析1 - AudioTrack使
  7. Android(安卓)-- 图片异步上传到PHP服务
  8. Android上使用Google Maps最最简单的例子
  9. android常用的设计模式总结 一
  10. 关于android的ListView优化