我有一个Android项目,在dex步骤中当前用完了堆空间:
:app:dexXXXXX Exception in thread "pool-1-thread-4" java.lang.OutOfMemoryError: Java heap space
我想在gradle中提高jvm min / max设置,就像我们以前使用Maven插件一样:
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<version>3.6.0</version>
<extensions>true</extensions>
<configuration>
<sdk>
<platform>${android.platform}</platform>
</sdk>
<undeployBeforeDeploy>true</undeployBeforeDeploy>
<dex>
<jvmArguments>
<jvmArgument>-Xms1024m</jvmArgument>
<jvmArgument>-Xmx2048m</jvmArgument>
</jvmArguments>
</dex>
但是在gradle中的android插件的文档中,我只看到了这些选项:
android {
dexOptions {
incremental false
preDexLibraries = false
jumboMode = false
}
}
有办法吗?有一个gradle.properties文件,但似乎只有jvmargs用于gradle本身。
答案 0 :(得分:18)
有一个未记录的dexOptions标志。
dexOptions {
javaMaxHeapSize "2g"
}
我在谷歌小组发帖中找到了这个标志。 https://groups.google.com/forum/#!topic/adt-dev/P_TLBTyFWVY