Android Studio的JVM内存不足问题怎么解决
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android Studio的JVM内存不足问题怎么解决相关的知识,希望对你有一定的参考价值。
参考技术A 1、清理打开腾讯手机管家——清理加速
腾讯手机管家可以清理垃圾文件、缓存文件、软件的残余、和多余的安装包。
2、卸载不要的
打开腾讯手机管家——软件管理——软件卸载
3、软件搬家
进入腾讯手机管家>清理加速>手机瘦身>软件转移储存卡进行相关操作~!
4、腾讯手机管家小火箭可清理加速内存本回答被提问者采纳
在 Android Studio 中更新 buildToolsVersion '23.0.1' 后出现内存不足问题
【中文标题】在 Android Studio 中更新 buildToolsVersion \'23.0.1\' 后出现内存不足问题【英文标题】:Out of memory issue after updating buildToolsVersion '23.0.1' in Android studio在 Android Studio 中更新 buildToolsVersion '23.0.1' 后出现内存不足问题 【发布时间】:2016-01-09 14:36:42 【问题描述】:在将buildToolsVersion '22.0.1'
更新为buildToolsVersion '23.0.1'
后,我经常出现内存不足的问题,我真的很困惑,不知道如何解决这个问题,因为这个错误只在buildTools
版本23.0.1
中显示。而当我将其更改为 22.0.1
时它工作正常。请帮我。我发布的错误如下,
Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: Java heap space
Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: Java heap space
Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: GC overhead limit exceeded
Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: Java heap space
Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: GC overhead limit exceeded
Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: Java heap space
Error:Execution failed for task ':app:transformClassesWithDexForDebug'.
> com.android.build.transform.api.TransformException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.7.0_25\bin\java.exe'' finished with non-zero exit value 1
build.gradle
apply plugin: 'com.android.application'
android
compileSdkVersion 23
buildToolsVersion '23.0.1'
defaultConfig
applicationId "com.example.app"
minSdkVersion 14
targetSdkVersion 23
versionCode 1
versionName "1.0"
// Enabling multidex support.
multiDexEnabled true
buildTypes
release
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
dependencies
compile 'com.android.support:appcompat-v7:23.0.1'
compile 'com.android.support:support-v4:23.0.1'
compile 'com.android.support:design:23.0.0'
compile 'com.android.support:cardview-v7:23.0.1'
compile 'com.android.support:recyclerview-v7:23.0.1'
compile 'com.android.support:palette-v7:23.0.1'
compile 'com.google.android.gms:play-services:7.5.0'
提前致谢。
【问题讨论】:
【参考方案1】:将此添加到您的 build.gradle 文件中的 android 闭包中:
dexOptions
javaMaxHeapSize "4g"
Android Studio Google JAR file causing GC overhead limit exceeded error
【讨论】:
我遇到了同样的问题,这很有效。但是为什么会出现这个问题呢? @L.更快的是,GC 开销限制超出了。似乎 java 需要比默认的更多的堆空间。 同样的问题并在 Android Studio 2.2 Beta 2 / Ubuntu 16.04 LTS 上解决【参考方案2】:接受的答案有效,但我对将dexOptions
放在我的build.gradle
中的位置感到有些困惑。我们实际上把它放在了 android 部分。
这里是 sn-p 示例:
android
dexOptions
javaMaxHeapSize "4g"
......
【讨论】:
【参考方案3】:实际上,对我来说,我使用了一个更复杂的解决方案,它结合了上面的所有内容,并在模块的 build.gradle 文件中启用了 multidex。
A.在 defaultConfig 部分添加这一行以启用 multiDex
// Enabling multidex support.
multiDexEnabled true
B.比设置 dexOptions,像这样:
dexOptions
incremental true
javaMaxHeapSize "4G"
C.改成 multidex 并将堆设置为 4g 后,可能会出现溢出错误,导致我取消注释并修改项目的 gradle.properties 文件中的 jvmargs 行,例如:
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
这些值可能因您的机器而异。您也可以使用双精度值。
【讨论】:
【参考方案4】:除了上述过程之外,还有另一个选项可以设置 jvm 参数。
org.gradle.jvmargs="-Xms2g -Xmx4g" in gradle.properties .
该设置用于调整内存。 Xms:启动内存 Xmx:最大内存
【讨论】:
【参考方案5】:我解决了这个问题
-
转到“系统”
环境设置高级
将 _JAVA_OPTIONS 值从“-Xms1024m”编辑为“-Xms2048m”
(如果不存在 _JAVA_OPTIONS 则单击新建按钮创建它)
确定并保存重启
我认为这对你也有帮助。 如果它有用,请支持这个答案。
【讨论】:
是的@Ali,这是针对 Windows 的【参考方案6】:dexOptions
javaMaxHeapSize "4g"
通过在 build.gradle 文件中添加这个(模块级别)解决了我的问题,我遇到了同样的问题
【讨论】:
【参考方案7】:在您的应用级别 build.gradle 中使用它:
android
dexOptions
javaMaxHeapSize "4g"
【讨论】:
以上是关于Android Studio的JVM内存不足问题怎么解决的主要内容,如果未能解决你的问题,请参考以下文章
内存不足错误:Android Studio 上的 Java 堆内存
在 Android Studio 中更新 buildToolsVersion '23.0.1' 后出现内存不足问题
优化Android Studio在AMD 2990WX上的编译速度