Myeclipse下java.lang.OutOfMemoryError: Java heap space

本文介绍了如何解决在运行Java程序时遇到的“java.lang.OutOfMemoryError:Java heap space”错误。通过调整JRE的DefaultVMArguments参数-Xms256M-Xmx1024M来增加堆内存大小,成功解决了因HashTable存储过多对象导致的内存溢出问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天跑仿真,参数设大了,出现了错误:“java.lang.OutOfMemoryError: Java heap space”。很明显是内存溢出,我检查了一下我的程序,没有死循环。应该是一个HashTable存了太多的对象。安装网上的解决方案设置了一圈,比如设置环境变量或者run argument等,没有任何效果。还得自己动手,按照如下方法搞定(心情舒畅):

window->Preferences->Java->Installed JREs,选择当前的JRE,edit;在新窗口里设置Default VM Arguments为 -Xms256M -Xmx1024M即可

转载于:https://www.cnblogs.com/joleang/p/3205591.html

2025-06-23 00:09:39.631 DEBUG 43184 --- [http-nio-8080-exec-6] o.s.web.servlet.DispatcherServlet : "ERROR" dispatch for POST "/error", parameters={} 2025-06-23 00:09:39.632 DEBUG 43184 --- [http-nio-8080-exec-7] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped to org.springframework.boot.autoconfigure.web.servlet.error.BasicErrorController#error(HttpServletRequest) 2025-06-23 00:09:39.632 ERROR 43184 --- [http-nio-8080-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Handler dispatch failed; nested exception is java.lang.OutOfMemoryError: Java heap space] with root cause java.lang.OutOfMemoryError: Java heap space at com.sun.proxy.$Proxy152.getString(Unknown Source) ~[na:na] at org.apache.ibatis.type.StringTypeHandler.getNullableResult(StringTypeHandler.java:36) ~[mybatis-3.5.13.jar!/:3.5.13] at org.apache.ibatis.type.StringTypeHandler.getNullableResult(StringTypeHandler.java:26) ~[mybatis-3.5.13.jar!/:3.5.13] at org.apache.ibatis.type.BaseTypeHandler.getResult(BaseTypeHandler.java:86) ~[mybatis-3.5.13.jar!/:3.5.13] at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.applyAutomaticMappings(DefaultResultSetHandler.java:582) ~[mybatis-3.5.13.jar!/:3.5.13] at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.getRowValue(DefaultResultSetHandler.java:412) ~[mybatis-3.5.13.jar!/:3.5.13] at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.handleRowValuesForSimpleResultMap(DefaultResultSetHandler.java:362) ~[mybatis-3.5.13.jar!/:3.5.13] at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.handleRowValues(DefaultResultSetHandler.java:333) ~[mybatis-3.5.13.jar!/:3.5.13] at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.handleResultSet(DefaultResultSetHandler.java:306) ~[mybatis-3.5.13.jar!/:3.5.13] at org.apache.ibatis.executor.resultset.DefaultResultSetHandler.handleResultSets(DefaultResultSetHandler.java:202) ~[mybatis-3.5.13.jar!/:3.5.13] at org.apache.ibatis.executor.statement.PreparedStatementHandler.query(PreparedStatementHandler.java:66) ~[mybatis-3.5.13.jar!/:3.5.13] at org.apache.ibatis.executor.statement.RoutingStatementHandler.query(RoutingStatementHandler.java:80) ~[mybatis-3.5.13.jar!/:3.5.13] at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:65) ~[mybatis-3.5.13.jar!/:3.5.13] at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:333) ~[mybatis-3.5.13.jar!/:3.5.13] at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:158) ~[mybatis-3.5.13.jar!/:3.5.13] at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:110) ~[mybatis-3.5.13.jar!/:3.5.13] at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:90) ~[mybatis-3.5.13.jar!/:3.5.13] at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:154) ~[mybatis-3.5.13.jar!/:3.5.13] at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147) ~[mybatis-3.5.13.jar!/:3.5.13] at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:142) ~[mybatis-3.5.13.jar!/:3.5.13] at jdk.internal.reflect.GeneratedMethodAccessor250.invoke(Unknown Source) ~[na:na] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na] at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na] at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:426) ~[mybatis-spring-2.0.4.jar!/:2.0.4] at com.sun.proxy.$Proxy74.selectList(Unknown Source) ~[na:na] at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:223) ~[mybatis-spring-2.0.4.jar!/:2.0.4] at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:147) ~[mybatis-3.5.13.jar!/:3.5.13] at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:80) ~[mybatis-3.5.13.jar!/:3.5.13] at org.apache.ibatis.binding.MapperProxy$PlainMethodInvoker.invoke(MapperProxy.java:142) ~[mybatis-3.5.13.jar!/:3.5.13] at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:86) ~[mybatis-3.5.13.jar!/:3.5.13] at com.sun.proxy.$Proxy86.getPat060List(Unknown Source) ~[na:na] at jdk.internal.reflect.GeneratedMethodAccessor1800.invoke(Unknown Source) ~[na:na]
最新发布
06-24
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值