Eclipse下OutOfMemoryError:Java Heap Space问题解决方法

摘要: 在用Eclipse 开发java 程序的过程中,如果写程序不注意,一下处理大量数据,很有可能出现 ava.lang.OutOfMemoryError 这样的错误. 怎么解决呢。

在用Eclipse 开发java 程序的过程中,如果写程序不注意,一下处理大量数据,很有可能出现 ava.lang.OutOfMemoryError 这样的错误,比如

 List list = domainBo.findAllDomain(100000); 
  for(Domain domain : list){
	process(domain.getDomainName());
  }


可能出这样的错误:

Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
	at java.util.HashMap.(HashMap.java:209)
	at java.util.LinkedHashMap.(LinkedHashMap.java:181)


出现这样的错误在 Eclipse 中的解决方法其实与配置 application server 中的方法一样, 参数都是一样的,都是配置 VM 参数, 只是配置的地方不同而已.

解决办法,在Eclipse菜单上点击 run -> run Configurations.., 选择你要运行的java 工程,点击 Arguments Tab页,写入参数.-Xms512M -Xmx1024M



一个错误的想法
看到有人说修改Eclipse IDE 安装目录下的eclipse.ini 文件就可以。这个想法是错的,这个配置文件中的参数是分配给Eclipse 用的,而不是我们的应用程序用的,所以这个想法错误. 一个常用的 eclipse.ini 文件内容如下:
-startup
plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.1.R36x_v20100810
-product
org.eclipse.epp.package.jee.product
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms512m
-Xmx1024m


PS, 另外如果用 TOMCAT 或者 JBOSS 应用服务器的话,应该都有一个配置叫 JAVA_OPTS 的参数配置项,也可以设置内存使用。一般这个设置好了,很少出现 outofMemory 错误。

上一篇: java 与富文本编辑器 fckeditor 结合的例子(源码下载)
下一篇: mybatis补充教程之一:在控制台显示sql语句,类似hibernate show_sql.
 评论 ( What Do You Think )
名称
邮箱
网址
评论
验证
   
 

 


  • 微信公众号

  • 我的微信

站点声明:

1、一号门博客CMS,由Python, MySQL, Nginx, Wsgi 强力驱动

2、部分文章或者资源来源于互联网, 有时候很难判断是否侵权, 若有侵权, 请联系邮箱:summer@yihaomen.com, 同时欢迎大家注册用户,主动发布无版权争议的 文章/资源.

3、鄂ICP备14001754号-3, 鄂公网安备 42280202422812号