在 Android studio 中更新 buildToolsVersion '23.0.1' 后出现内存不足问题
Out of memory issue after updating buildToolsVersion '23.0.1' in Android studio
我在更新 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'
}
提前致谢。
将此添加到 build.gradle 文件中的 android 闭包:
dexOptions {
javaMaxHeapSize "4g"
}
Android Studio Google JAR file causing GC overhead limit exceeded error
我解决了这个问题
- 转到"System"
- 高级环境设置
- 将 _JAVA_OPTIONS 值从“-Xms1024m”修改为“-Xms2048m”
(如果不存在 _JAVA_OPTIONS 而不是创建它,请单击“新建”按钮)
- 确定并保存重启
我想这对你也有帮助。
如果有用,请投票支持此答案。
除了上述步骤之外,还有一个选项可以设置 jvm 参数。
org.gradle.jvmargs="-Xms2g -Xmx4g" in gradle.properties .
该设置用于调整内存。
Xms:起始内存
Xmx: 最大内存
实际上对我来说,一个更复杂的解决方案结合了上面的所有内容,并在模块的 build.gradle 文件中启用了 multidex。
一个。在 defaultConfig 部分添加此行以启用 multiDex
// Enabling multidex support.
multiDexEnabled true
乙。比设置 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
这些值可能因您的机器而异。您也可以使用双精度值。
已接受的答案有效,但我对将 dexOptions
放在我的 build.gradle
中的位置感到有点困惑。我们实际上把它放在 android 部分下。
这是示例片段:
android {
dexOptions {
javaMaxHeapSize "4g"
}
......
}
dexOptions {
javaMaxHeapSize "4g"
}
我遇到了同样的问题,通过在 build.gradle 文件(模块级别)中添加它解决了我的问题
在您的应用级别使用此 build.gradle:
android {
dexOptions {
javaMaxHeapSize "4g"
}
}
我在更新 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'
}
提前致谢。
将此添加到 build.gradle 文件中的 android 闭包:
dexOptions {
javaMaxHeapSize "4g"
}
Android Studio Google JAR file causing GC overhead limit exceeded error
我解决了这个问题
- 转到"System"
- 高级环境设置
- 将 _JAVA_OPTIONS 值从“-Xms1024m”修改为“-Xms2048m”
(如果不存在 _JAVA_OPTIONS 而不是创建它,请单击“新建”按钮) - 确定并保存重启
我想这对你也有帮助。 如果有用,请投票支持此答案。
除了上述步骤之外,还有一个选项可以设置 jvm 参数。
org.gradle.jvmargs="-Xms2g -Xmx4g" in gradle.properties .
该设置用于调整内存。 Xms:起始内存 Xmx: 最大内存
实际上对我来说,一个更复杂的解决方案结合了上面的所有内容,并在模块的 build.gradle 文件中启用了 multidex。
一个。在 defaultConfig 部分添加此行以启用 multiDex
// Enabling multidex support.
multiDexEnabled true
乙。比设置 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
这些值可能因您的机器而异。您也可以使用双精度值。
已接受的答案有效,但我对将 dexOptions
放在我的 build.gradle
中的位置感到有点困惑。我们实际上把它放在 android 部分下。
这是示例片段:
android {
dexOptions {
javaMaxHeapSize "4g"
}
......
}
dexOptions {
javaMaxHeapSize "4g"
}
我遇到了同样的问题,通过在 build.gradle 文件(模块级别)中添加它解决了我的问题
在您的应用级别使用此 build.gradle:
android {
dexOptions {
javaMaxHeapSize "4g"
}
}