我是Java的新手,无法理解我应该如何设置虚拟机的大小。我已经构建了一个显示图像的小型Web小程序。有时图像可能非常大,当发生这种情况时,我得到:
*Exception in thread "Image Fetcher 0" java.lang.OutOfMemoryError: Java heap space*
我一直在尝试按照我在互联网上找到的不同说明,最后使用以下命令行创建了Eclipse的快捷方式:
"C:\Documents and Settings\Dror Well\Desktop\temp\Eclipse\eclipse\eclipse\eclipse.exe"
-vmargs -vm "C:\Program Files\Java\jdk1.6.0_14\bin"
\"C:\Program Files\Java\jre6\bin\javaw.exe" -Xms256m -Xmx1024m
我错过了什么?该怎么做?
答案 0 :(得分:5)
在该行中,您已将VM args设置为Eclipse运行的Java进程。您需要为应用程序执行的操作是为您的应用程序设置-Xmx512m(或者您想要的大小)正在跑步。您可以从“运行”对话框中执行此操作。
从“运行”菜单中,选择“打开运行对话框”。在那里,您应该在左侧看到一个程序列表。如果您已经运行过一次,那么您的应用程序应该列在Java Applications节点中。选择它,然后在右侧面板上转到“参数”选项卡。将有一个VM Arguments文本框。在那里输入您的-Xmx arg。
答案 1 :(得分:0)
参数应传递给运行应用程序的JVM,而不是运行Eclipse的JVM。尝试查看Eclipse中的调试设置,应该有一些地方放置-Xmx和-Xms参数。
答案 2 :(得分:0)
由于图像可能非常大,您应该查看以下备选方案:
答案 3 :(得分:-1)
对于Eclipse,您需要更新eclipse.ini文件以设置任何JVM属性。有关文件位置以及如何更新文件的详细信息this link。