【问题标题】:Eclipse runs out of heap space on ant buildEclipse 在 ant build 上耗尽了堆空间
【发布时间】:2012-03-08 01:03:38
【问题描述】:

ext-Myself 和两个同事一直在从事 GWT 项目并在 eclipse 中编码。该项目正在发展,我们正在引进几位新的开发人员来提供帮助。我的任务是在他们开始工作之前设置他们的工作站。我们当前的系统都按照基本 GWT 设置指南 (http://code.google.com/webtoolkit/usingeclipse.html) 开箱即用

在我的工作系统上,我没有更改 eclipse 为内存大小设置的任何默认值。

新系统将运行简单的启动项目,所以我知道我已经设置了 GWT。当我导入我们当前的代码库时,我可以毫无问题地在本地运行该站点。当我尝试运行我们必须构建项目并将其推送到我们的开发服务器的 ant 脚本时,新系统会抱怨:

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

在新系统上,我已将 eclipse.ini 文件修改为并设置 -Xmx1024M,并在 Window>Preferences>Java>Installed JREs 下添加了 -Xmx1024M,但都没有解决问题。 (此处显示:http://dinu.blog.com/2010/06/02/out-of-memory/

我尝试过 32 位和 64 位版本的 eclipse,我什至尝试将我已知的工作 eclipse 文件夹复制到新系统上,但没有任何运气。有人有什么想法吗?

【问题讨论】:

  • 为什么必须使用 Ant 脚本来构建项目? Eclipse 已经为您编译了 Java 类。您只需要获取 Eclipse 生成编译类的目录并将其 jar 即可。
  • 我们正在使用 ant 脚本构建一个战争,然后将其部署到运行 tomcat 的服务器上。我们还使用 ant 脚本和构建服务器在夜间自动构建项目。
  • 只是为了构建 WAR 内存不足?这很奇怪......你的 Ant 脚本不是在尝试编译类(再次)吗?
  • 它确实将 java 源代码编译成字节码,然后将字节码编译成 JavaScript(GWT 称之为“生产模式”),然后从生产模式进入战争。这个问题非常奇怪。现在的项目根本不应该占用大量内存。
  • 正如我所说,您的 Ant 脚本不必编译 Java 类,我认为这会消耗所有内存(我知道为什么,但我正在为之工作的项目也是如此,看起来就像 Eclipse 问题...),因为如果您设置了“自动构建”选项,Eclipse 已经编译类。您只需要使用已经生成的 .class 并跳过此步骤。

标签: java eclipse gwt heap-memory gxt


【解决方案1】:

您可能需要为运行 ant 的 JVM 增加内存(通过 eclipse 的外部工具首选项),如下所述:http://soenkerohde.com/2008/06/change-eclipse-ant-settings-when-you-run-out-of-memory/

【讨论】:

  • 该链接与我在原始问题中包含的链接几乎相同。 MaxPermSize 是唯一的区别,就我而言,它没有帮助。
【解决方案2】:

我们在运行某些 Ant 脚本时遇到了类似的问题。您可以在 Run->External Tools->External Tools Configurations 对话框中为 Ant Build 设置 VM 参数。单击 JRE 选项卡并根据需要设置常用的 -Xmx 和 -Xms 参数。

【讨论】:

    【解决方案3】:

    我也有同样的问题。我通过在终端窗口的命令行中使用 ant 构建来“解决”或更好地避免它。

    Here 有人提议在 build.xml 文件中添加一个 fork=yes 属性,并读取this

    【讨论】:

    • 这确实对我有用,而且现在是一个很好的解决方法。这是执行 m0skit0 建议的另一种方法。不理想,但这样我就不必维护两个构建脚本(一个用于开发盒,一个用于构建服务器。)
    • 错误链接这里是什么或不再是这个
    猜你喜欢
    • 2017-09-16
    • 1970-01-01
    • 2011-05-28
    • 1970-01-01
    • 1970-01-01
    • 2014-06-06
    • 1970-01-01
    • 2020-01-20
    • 2017-03-17
    相关资源
    最近更新 更多