gradle构建时出现内存溢出错误

5

在使用gradle构建我的项目时,我遇到了OutOfMemoryError。我尝试了许多在stackoverflow上提供的解决方案,但没有帮助。请查看下面的堆栈跟踪。

java.lang.OutOfMemoryError: Java heap space
        at com.sun.tools.javac.util.ByteBuffer.<init>(ByteBuffer.java:45)
        at com.sun.tools.javac.jvm.ClassWriter.<init>(ClassWriter.java:101)
        at com.sun.tools.javac.jvm.ClassWriter.instance(ClassWriter.java:145)
        at com.sun.tools.javac.main.JavaCompiler.<init>(JavaCompiler.java:295)
        at com.sun.tools.javac.main.JavaCompiler.instance(JavaCompiler.java:72)
        at com.sun.tools.javac.processing.JavacProcessingEnvironment.contextForNextRound(JavacProc
        at com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(JavacProcessingE
        at com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:981)
        at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:727)
        at com.sun.tools.javac.main.Main.compile(Main.java:353)
        at com.sun.tools.javac.api.JavacTaskImpl.call(JavacTaskImpl.java:115)
        at org.gradle.api.internal.tasks.compile.JdkJavaCompiler.execute(JdkJavaCompiler.java:45)
        at org.gradle.api.internal.tasks.compile.JdkJavaCompiler.execute(JdkJavaCompiler.java:33)

我尝试过像在gradlew文件中添加以下行这样的解决方案。

GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\" \"-Xmx1024m\" \"-Xms256m\" \"-XX:MaxPermSize=1024m\""

请帮我解决这个问题,提前感谢。


1
尝试使用“-Xms1024m”,你的gradle能够编译吗?它是否会提示内存不足? - chengpohi
有一个 EJB 项目,但是在编译时 Gradle 经常失败,但在 Eclipse 中没有编译时错误。 - rishi
1个回答

阿里云服务器只需要99元/年,新老用户同享,点击查看详情
2

最大堆和最大perm大小配置为1G,这会给你带来麻烦。

分配给perm生成大小的1G是总堆的1G(总堆的100%分配给永久代)。将永久代大小减少到128M,然后尝试。

按以下方式更新GRADLE_OPTS。

-XX:MaxPermSize=128m

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,