【问题标题】:Hibernate - OutOfMemoryError - java heap sizeHibernate - OutOfMemoryError - java 堆大小
【发布时间】:2012-03-27 13:06:27
【问题描述】:

我目前遇到这个问题,我正在执行一个会加载大量记录的查询。在第一次执行时,它是成功的,但是当我 再次执行,我的 java 堆大小内存不足。

我知道我可以使用命令行增加 java 堆大小,但这需要一个已编译的 jar 文件。 但是我目前正在开发过程中,那么在这种情况下如何增加java堆大小?

我使用 Elipse 作为我的 IDE。

感谢您的任何回复。

【问题讨论】:

  • 看到这个问题:stackoverflow.com/questions/880855/…。这就是你要找的吗?
  • 小心。可能是您没有正确使用 Hibernate,而且听起来您正在构建的应用程序最终可能会出现内存问题。
  • @ james DW,虽然它通过添加 vm 参数 -Xmx1024m 起作用,但我仍在考虑您的建议,我认为我如何使用休眠也存在问题,这就是我遇到此错误的原因!

标签: java hibernate out-of-memory size heap-memory


【解决方案1】:

它不需要编译的 jar 文件。选择运行 - 运行配置... - 选择您的运行配置 - 参数选项卡。然后在 VM arguments 文本框中输入适当的命令行参数:例如-Xmx1024m

【讨论】:

  • 右图,如果这是正确答案,您应该将其标记为正确答案。
【解决方案2】:

你可以修改我们eclipse目录里面的eclipse.ini文件。
你会发现Xms40m Xmx256m参数有一些值,你可以增加它到 Xms256m Xmx1024m 。然后检查内存不足错误是否仍然存在。如果它在那里然后尝试调整这些参数稍微增加并检查。

【讨论】:

  • 这将修改 Eclipse 自己的内存参数。它不会改变 Eclipse 启动的程序的内存参数。
  • 对对。实际上所有使用java内存的组件都可以通过在不同的地方提供这些参数来处理。就像使用这些参数启动服务器时一样
【解决方案3】:

显然这还不足以回答...好吧,让我从这些答案中复制文本:S

您可以使用环境变量_JAVA_OPTIONS 来设置默认堆大小。这将更改所有 Java 程序的堆大小。像这样:

export _JAVA_OPTIONS="-Xmx1g"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-04
    • 2011-09-01
    • 1970-01-01
    • 2023-03-06
    • 2011-12-21
    相关资源
    最近更新 更多