Android填坑—Error:Execution failed for task ':app:transformClassesWithDexForRelease'
昨晚正在干着自己的事,另外一个同学说项目打包不了,但是可以debug运行。又急着需要打包apk发给那边人去测试。真的是搞事情,赶紧打开项目试试打包。项目从之前的$Eclipse$中转过来的,清楚的记得当时转成功后第一件事就是测试能不能编译运行,第二就是尝试打包自动更新。确定当时没有问题,但是之后在上面又开发了些东西,gradle加了一些包啊啥的。
错误

打包过程特别慢,那个圈一直转,我还将网切换到了自己的手机热点,因为我知道实验室的网会导致有的包下载不了,但是最后打包了半天,失败了。。。。
开始各种搜索。。。。。。。。。。
填坑过程(可直接看后面的解决)
- 网上确实有很一些帖子啊,就说需要
defaultConfig下添加multiDexEnabled true,这句话是干什么用的呢,就是分包,为什么需要分包呢,因为工程的方法数超过了64k,详见我的另外一篇文章Android工程方法数超过64K。这就说明我是有这句话的,而且看看报错异常中确实有multi的字样。而这个确实也是后来转为Androif Studio后加的,所以基本问题就定位到这里了。 - 所以去掉了这个分包功能(我知道去掉肯定会无法运行,只是想看看打包apk的时候会不会报这个error),事实证明,直接提示方法数超过64k,编译不过,我真是天真。
- 去看了看添加的gradle配置
implementation 'com.android.support:multidex:1.0.1'
果然上面提示最新版本1.0.3,好吧,我改成最新版本,重写gradle下载,这个时候就出现了一转圈,我去打开了External Liberaies看看,结果发现了这个

不对啊,我明明是1.0.3,怎么下载了1.0.2,一脸懵逼,猜想是我使用的compileSdkVersion 27,1.0.3需要更高版本吧,个人猜想而已。我又改成了1.0.2,最后满怀期待的打包,啪,,,异常依旧。心死。。。
4. 想着今天晚上可能打包不了了,哎,仔细看看异常。 注意到了这句话
java.lang.OutOfMemorayError:GC overhead limit exceed
内存溢出,GC出问题了????,难道这不应该是跑程序会出的问题吗,搞笑,copy,百度,一通搜索后,这样一句话映入眼帘.
javaMaxHeapSize "4g"
这句话写在app.gradle的dexOptions下,字面意思,指定堆大小4g,联想到内存溢出。先不管,搞上去,试一试打包。Perfect。。。。。。。。unbelievable。。。amazing。。。。
解决
在在app.gradle的buildTypes的dexOptions下添加
javaMaxHeapSize "4g"
当然可以设定更大一些,似乎根据自己的pc配置来的。
最后
生命不息,使劲造Android填坑—Error:Execution failed for task ':app:transformClassesWithDexForRelease'
Android填坑—Error:Execution failed for task ':app:transformClassesWithDexForRelease'的更多相关文章
- 关于android studio 出现Error:Execution failed for task ':app:preDebugAndroidTestBuild'. 的解决办法
Error:Execution failed for task ':app:preDebugAndroidTestBuild'. > Conflict with dependency 2018年 ...
- ANDROID打包错误ERROR:EXECUTION FAILED FOR TASK ´:APP:LINTVITALRELEASE´.
来自:http://dditblog.com/itshare_657.html 今天修改之前的项目之后.准备打包的时候.一起打包不了.一直提示有问题.错误是一些什么Strings.xml里面的一些信息 ...
- Android Studio3.0 Error:Execution failed for task ':app:javaPreCompileDebug' 错误
Error:Execution failed for task ':app:javaPreCompileDebug'. > Annotation processors must be expli ...
- Android Studio:Error:Execution failed for task ':app:mergeDebugResources'. > Some file crunching failed, see logs for details
Gradle 编译错误: 14:39:58 Executing tasks: [clean, :app:generateDebugSources, :app:mockableAndroidJar, : ...
- android开发解决Error:Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'. > java.lang.RuntimeException: java.lang.RuntimeException: c.....
网上常见的方法我都试过,都没能解决,偶然看到的一个方法解决了,在这了记录一下. 在App目录下的build.gradle的android{ ... ....}中添加如下代码,即可解决.(xx.xx. ...
- Android Studio 运行出现 Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.
转载请标明出处: http://www.cnblogs.com/why168888/p/5978381.html 本文出自:[Edwin博客园] 我引用compile 'com.squareup.re ...
- Error:Execution failed for task ':app:dexDebug'. > com.android.ide.common.process.ProcessException
异常Log: Error:Execution failed for task ‘:app:dexDebug’. > com.android.ide.common.process.ProcessE ...
- Android:Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.
今天开发Android项目时,导入了http有关架包后,程序编译报错如下: Error:Execution failed for task ':app:transformResourcesWithMe ...
- Android Studio Error:Execution failed for task ':app:preDebugAndroidTestBuild'.彻底解决的方法以及修改AScompileSDKVersion
Error Error:Execution failed for task ':app:preDebugAndroidTestBuild'. > Conflict with dependency ...
随机推荐
- BPM FlowPortal 开发环境及发布环境的配置
开启开发模式 开发时应设置防缓存和调试信息输出. 开发后发布 开发完成后正式使用时,除了对以上各项做相反设置外,还需设置web.config中的JSVersion,使每个用户都能自动下载最新版的js文 ...
- 记一次B类地址子网划分
说明:一般内网地址,没有要求严格的划分之类的.需要按要求严格划分一般都是公网地址 温馨提醒:由于笔者功底不是很深厚,只能说我们保证把数算对用相对简单的方法 现有一个公网ip,B类地址130.3.0.0 ...
- Linux-开机启动程序
尝试一下几种方法: 1.修改 /etc/rc.local文件. 在exit0 前添加启动命令 2.在/home/pi/.config/autostart/ 下添加.desktop 在.config ...
- pycharm连接数据库
今天说说如何使用pycharm连接oracle数据库 1.首先你需要安装oracle数据库 2.在pycharm中安装cx_Oracle.在file->settings->Project- ...
- Linux磁盘管理——虚拟文件系统
前言 Linux支持众多文件系统,包括: 传统文件系统:ext2 / minix / MS-DOS / FAT (用 vfat 模块) / iso9660 (光盘)等等:日志式文件系统: ext3 / ...
- Linux有名管道的 阻塞VS非阻塞 读写
参考文章: 关于有名管道open时阻塞的问题 Linux有名管道(FIFO)的阻塞和非阻塞读写 挖坑,日后填
- unity和lua开发游戏常备技能
推荐阅读: 我的CSDN 我的博客园 QQ群:704621321 我的个人博客 一.使用制作滑动列表:使用UILayout做虚拟列表 ui.list = base:findcom(" ...
- 基于Java+Selenium的WebUI自动化测试框架(八)-----读取元素(XML文件)
我们继续回到自动化测试框架的主线上来,在前面的文章中,我们定义一个页面元素的主要参数有:路径,找寻方式,等待时间,名称,这个四个参数.另外,我们还需要考虑一个问题,就是网站的页面. 举个例子来说,如果 ...
- java基础(5)---内存分配
一.内存分配 如: 先写下面的源代码: 如果继续写:
- idea远程debug调试阿里云ECS
1.首先远程服务器的代码跟本地项目代码应该完全一致,否则会出现debug混乱现象,亲测. 2.config如图: ①命名可以省略②复制这个地址③输入远程ip和自定义且未被占用的端口号xxxx 3.开放 ...