android 4.2 OutOfMemoryError
来源:互联网 发布:mac下制作win7安装u盘 编辑:程序博客网 时间:2024/05/18 03:29
在Ubuntu 12.04编译Android 4.2时,出现如下错误:
preparing update.zip
packaging...signing...
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at java.util.Arrays.copyOf(Arrays.java:2786)
at java.io.ByteArrayOutputStream.write(ByteArrayOutputStream.java:94)
at java.util.zip.DeflaterOutputStream.deflate(DeflaterOutputStream.java:155)
at java.util.zip.DeflaterOutputStream.write(DeflaterOutputStream.java:112)
at java.util.zip.ZipOutputStream.write(ZipOutputStream.java:272)
at com.android.signapk.SignApk.copyFiles(SignApk.java:496)
at com.android.signapk.SignApk.main(SignApk.java:557)
signing done
在网上查,大都说是因为JVM虚拟机的Heap大小不足有关,摘录如下:
JVM堆的设置是指java程序运行过程中JVM可以调配使用的内存空间的设置.JVM在启动的时候会自动设置Heap size的值,其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)是物理内存的1/4。可以利用JVM提供的-Xmn -Xms -Xmx等选项可进行设置。
如果Heap Size设置偏小,除了这些异常信息外,还会发现程序的响应速度变慢,GC占用了更多的时间,而应用分配到的执行时间较少。
Heap Size 最大不要超过可用物理内存的80%,一般的要将-Xms和-Xmx选项设置为相同,而-Xmn为1/4的-Xmx值。Heap size的 -Xms -Xmn 设置不要超出物理内存的大小。
建议修改build/core/definitions.mk文件,修改变量 :transform-classes.jar-to-dex中的-JXms16M -JXmx2048M值,如果机器总内存是4G的,可以将-JXms16M -JXmx2048M修改为-JXms1024M -JXmx2048M。
我按照上面的描述去做,仍然会有上述错误。后来想想,自己之前往data/目录下放了两个wav文件,加起来得有100多MB,估计在打包时太大了,就把wav文件删去试一试,果然就好了。
0 0
- android 4.2 OutOfMemoryError
- android OutOfMemoryError
- android OutOfMemoryError
- Android Memory Management, OutOfMemoryError
- Android Memory Management, OutOfMemoryError
- Android Memory Management, OutOfMemoryError
- Android Memory Management, OutOfMemoryError
- Android Memory Management, OutOfMemoryError
- Android Memory Management, OutOfMemoryError
- android decodeByteArray outofmemoryerror
- android内存溢出OutOfMemoryError
- Android Memory Management, OutOfMemoryError
- Android Memory Management, OutOfMemoryError
- [Android]java.lang.OutOfMemoryError
- Android中的OutOfMemoryError
- Android异常:OutOfMemoryError
- Android 优化Bitmap避免 OutOfMemoryError
- android Memory Management, OutOfMemoryError Note
- 马的遍历问题-问题分析
- 离散数学及其应用—— ch4 归纳与递归
- 学习 $.messager.show 的简单使用
- JAVA中的public static void main(String[] args)
- ubuntu设置时区,网上同步时间
- android 4.2 OutOfMemoryError
- 编程中无穷大常量的设定技巧
- HDU 3452 Bonsai(网络流之最小割)
- poj1149PIGS(最大流+建图)
- 为什么程序员的工作效率跟他们的工资不成比例
- 客户端怎么判断Socket连接已与服务器断开
- Swift与OC混编
- snprintf函数用法
- 2014年 嵌入式Linux会议LinuxCon欧洲的时间表公布