我正在使用 GWT 和 GAE 开发应用程序。当我尝试重建它或创建一个工件时,我得到了很多错误,如下图所示。
我搜索了 google 和 Stack Overflow,我得到了一些答案,但没有针对我的特定问题。
据我了解,我得到了错误,因为我的垃圾收集器消耗了大量内存。
这是主要错误Exception in thread "main" java.lang.OutOfMemoryError: GC overhead limit exceeded
。
我正在使用 GWT 和 GAE 开发应用程序。当我尝试重建它或创建一个工件时,我得到了很多错误,如下图所示。
我搜索了 google 和 Stack Overflow,我得到了一些答案,但没有针对我的特定问题。
据我了解,我得到了错误,因为我的垃圾收集器消耗了大量内存。
这是主要错误Exception in thread "main" java.lang.OutOfMemoryError: GC overhead limit exceeded
。
好的,我解决了这个问题。只是增加虚拟机编译项目所需的内存。以前它是 128,现在我将它更改为 512。随着项目的增长,它需要更多的内存来编译项目的类。这是在 Injtellj IDEA 中执行此操作的方法。右键项目模块 -> 打开模块设置 -> 模块 -> GWT -> 编译器最大堆大小(Mb) -> 更改为 512。
注意:在 Ideal Intellij 12+ 中,项目设置位于:文件 -> 项目结构或 Ctrl+Alrt+Shitf+S
我遇到了同样的问题
Exception in thread “main” java.lang.OutOfMemoryError: GC overhead limit exceeded
当我试图修复这个错误时,它显示了同样的错误。所以不要惊慌,只需通过在 Run->Run Configurations->Click on arguments->inside VM arguments type 中设置此选项来增加大小
-Xms1024M -Xmx2048M
Xms- 最小限制
Xmx- 最大限制
Adio 的回答是正确的,除了当我们添加“gwt-mobile”库时我需要将其更改为 1000Mb - 512 Mb 仍然给我“GC 开销限制”错误。我认为 128Mb 是一个相当糟糕的默认值——即使我们开始编写应用程序时,它也对我们不起作用。
通过 netbeans 中的项目属性更改配置不起作用。
我的解决方案是编辑 nbproject/gwt.properties:
# Additional JVM arguments for the GWT compiler
gwt.compiler.jvmargs=-Xmx1024M
我尝试了网上许多帖子中的所有建议,但没有一个奏效。经过多次试验,最后我发现在 OSX 上使用 G1GC 垃圾收集器对我来说有很大的不同。如果您使用的是 ANT,那么您必须确保构建文件使用 G1GC 垃圾收集器启动编译器
在 NetBeans 8.2 中执行以下操作
右键单击项目名称 -> 属性 -> Google Web Toolkit
将 JVM 参数修改为 -Xmx512M
点击确定
再次运行
这适用于 Windows 10、Netbeans 8.2、GWT 2.8.2、JDK 1.8