线程“main”中的异常java.lang.OutOfMemoryError:GWT应用程序中超出了GC开销限制

时间:2012-06-18 21:41:27

标签: java google-app-engine gwt

我正在使用GWT和GAE开发应用程序。当我尝试重建它或创建一个工件时,我会在下面的图片中看到很多错误。

我搜索了谷歌和Stack Overflow,我得到了一些答案但不是我的特殊问题。

根据我的理解,我得到了错误,因为我的垃圾收集器消耗了大量内存。

enter image description here

这是主要错误Exception in thread "main" java.lang.OutOfMemoryError: GC overhead limit exceeded

6 个答案:

答案 0 :(得分:14)

好的,我解决了这个问题。只需增加虚拟机编译项目所需的内存。以前它是128,现在我将它改为512.随着我的项目的增长,它需要更多的内存来编译项目的类。这是如何在Injtellj IDEA中做到这一点。右键单击该项目 模块 - >打开模块设置 - >模块 - > GWT - >编译器最大堆大小(Mb) - >改为512.

enter image description here

注意:在Ideal Intellij 12+中项目设置位于:文件 - >项目结构或Ctrl + Alrt + Shitf + S

答案 1 :(得分:4)

我遇到了同样的问题

Exception in thread “main” java.lang.OutOfMemoryError: GC overhead limit exceeded 

当我尝试修复此错误时,它显示相同的错误。所以不要惊慌,只需在Run->运行配置中设置此选项 - >点击参数 - >在VM参数类型

中再增加一点尺寸
 -Xms1024M -Xmx2048M

Xms-最低限额

Xmx-最大限制

答案 2 :(得分:2)

Adio的答案是正确的,只是当我们添加“gwt-mobile”库时我需要将其更改为1000Mb - 512 Mb仍然给我“GC开销限制”错误。我认为128Mb是一个相当差的默认值 - 即使我们开始编写应用程序也不适用于我们。

答案 3 :(得分:1)

通过netbeans中的项目属性更改配置不起作用。

我的解决方案是使用:

编辑nbproject / gwt.properties
# Additional JVM arguments for the GWT compiler
gwt.compiler.jvmargs=-Xmx1024M

答案 4 :(得分:0)

我在网上的一些帖子中尝试了所有的建议,但没有一个有效。 经过多次试验,最后我发现在OSX上使用G1GC垃圾收集器对我来说有很大的不同。如果您使用ANT,则必须确保构建文件使用G1GC垃圾收集器启动编译器

答案 5 :(得分:0)

在NetBeans 8.2中执行以下操作

右键单击项目名称->属性-> Google Web工具包

将JVM参数修改为-Xmx512M

点击确定

再次运行

在Windows 10,Netbeans 8.2,GWT 2.8.2,JDK 1.8上对我来说可以使用