2012-06-14 307 views
2

我已阅读各种帖子在stackoverflow,我想弄清楚如何增加我的JVM的堆大小。 我知道命令-vmargs -Xms256m -Xmx4096m会增加堆大小。 但它不工作,或者我不知道如何使用该命令。我读过,我应该去JVM文件夹并输入这个命令,但我不能在我的虚拟机中找到Java。增加堆大小

我也读过,我可以通过更改eclipse.ini文件中的值来做到这一点,但我无法找到与我的文件中的堆大小相关的任何内容。我可以做一个grep java,并且发现我的堆大小是324m。

有人可以指导我在哪里以及如何增加堆大小?

+2

您是否试图增加Eclipse的堆大小?还是另一个Java应用程序?它可能是[这个问题]的副本(http://stackoverflow.com/questions/1441373/increase-jvm-heap-size-for-scala)? –

+0

这些是你需要传递给Java的参数,无论是Java应用程序还是Eclipse。其次,我建议将-Xmx4096M减少到2048M,因为有些平台有限制,可能没有足够的内存来分配! –

回答

7

这取决于你正在尝试启动什么应用程序。

如果您使用java可执行文件从命令行运行java代码,那么您可以简单地将这些参数作为参数传递给java可执行文件。

java -Xms256m -Xmx2096m <main class> 

如果你想增加Eclipse的JVM的内存,那么你可以通过附加以下行到文件末尾更新的eclipse.ini。

-Xms256m 
-Xmx4906m 

对于使用JVM任何软件(如Tomcat中,WebLogic等),您需要按照他们的文档设置JVM参数。通常,他们将提供启动脚本,您可以选择设置JVM参数。

3

如果您使用的是标签建议的Scala,则可以使用-J作为必须传递给Java的参数的前缀。像这样:

scala -J-Xms256m -J-Xmx4096m 

这将运行具有256兆字节初始内存和4千兆字节最大内存的解释器。

同样的事情可以使用scalacfsc。现在

,如果您正在使用java运行的东西,你只是通过他们直接:

java -Xms256m -Xmx4096m <some other stuff> 

如果使用的是别的东西,请说你用的是什么,否则我们不能帮你。