Android中设置org.gradle.jvmargs

10 篇文章 0 订阅

一、配置文件

gradle.properties文件

二、作用

Specifies the JVM arguments used for the daemon process.

The setting is particularly useful for tweaking memory settings.org.gradle.jvmargs=-Xmx1536m

上面的那两行是对这句话的解释:

用于指定守护进程的JVM参数。

这个设置呢,对于调整内存设置特别有用。

1.那平常开发中它有什么用呢?

主要是用来加快gradle的编译!

按照官方的说法:

Java 虚拟机具有一个堆(Heap),堆是运行时数据区域,所有类实例和数组的内存均从此处分配。堆是在 Java 虚拟机启动时创建的,在JVM中堆之外的内存称为非堆内存(Non-heap memory)。

简单的说就是:

堆是java代码可占用的内存,开发人员写的东西都是堆分配的内存(底层实现除外)。而非堆内存则是JVM自己用的,比如JVM内部处理或优化,垃圾处理,常数池等。

堆的内存分配用-Xms和-Xmx

-Xms分配堆最小内存,默认为物理内存的1/64;

-Xmx分配最大内存,默认为物理内存的1/4。

非堆内存分配用-XX:PermSize和-XX:MaxPermSize

-XX:PermSize分配非堆最小内存,默认为物理内存的1/64;

-XX:MaxPermSize分配最大内存,默认为物理内存的1/4。

因此,合理的内存分配是程序正常稳定的运行的基础。不然内存溢出可就麻烦了。

三、出现 OOM调整

通过配置gradle.properties中的参数,可以调整编译时堆栈的大小。尤其对一些方法数比较多的工程,打开了multidex编译开关,在编译时一定要配置较大的heap,否则会出现如下提示甚至OOM错误。

To run dex in process, the Gradle daemon needs a larger heap.

It currently has 959 MB.

For faster builds, increase the maximum heap size for the Gradle daemon to at least 1536 MB.

To do this set org.gradle.jvmargs=-Xmx1536M in the project gradle.properties.

For more information see https://docs.gradle.org/current/userguide/build_environment.html

To run dex in process, the Gradle daemon needs a larger heap.

It currently has 959 MB.

For faster builds, increase the maximum heap size for the Gradle daemon to at least 1536 MB.

To do this set org.gradle.jvmargs=-Xmx1536M in the project gradle.properties.

For more information see https://docs.gradle.org/current/userguide/build_environment.html

配置文件内容:

org.gradle.jvmargs=-Xmx2048m

-XX:MaxPermSize=1024m

-XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

org.gradle.parallel=true

org.gradle.daemon=true

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值