解决OOM:JVM内存不足问题
2025年06月20日
•
内存
•
我要评论
在运行项目的时候,代码maven等正确的情况下,项目跑不起来报内存不足的问题,很有可能就是oom问题!什么是oom?“out of memory”=“内存不足&rd
在运行项目的时候,代码maven等正确的情况下,项目跑不起来报内存不足的问题,很有可能就是oom问题!
什么是oom?
“out of memory”=“内存不足”
官方回答:
- 当 jvm 因为没有足够的内存来为对象分配空间,并且 垃圾回收器 也已经没有空间可供回收时,就会抛出这个错误。(注:非exception,已经严重到不足以被应用处理)。
举例:
- 就是你设置的项目需要10内存而你只有5,所以报oom问题。
知识点插入:
- 内存泄露:申请使用完的内存没有释放,导致虚拟机不能再次使用该内存,此时这段内存就泄露了,因为申请者不用了,而又不能被虚拟机分配给别人用。
- 内存溢出:申请的内存超出了jvm能提供的内存大小,此时称之为溢出。
oom出现的原因
- 分配过少:jvm 初始化内存小,业务使用了大量内存;或者不同 jvm 区域分配内存不合理
- 内存泄漏:某一个对象被频繁申请,不用了之后却没有被释放,发生内存泄漏,导致内存耗尽
oom的解决方法
直接的解决办法是将setting->compile中属性的值调大,我这里是调到了3000

合理设置对外内存大小:
根据应用的实际需求调整-xx:maxdirectmemorysize参数,给予足够的直接内存空间。(亲测:修改错误idea会无法启动,建议使用第一种♥️ )
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。
相关文章:
-
ps无疑是一款非常好用的图像编辑软件,对于电脑小白来说操作非常困难,比如提示“不能完成命令,因为没有足够内存(ram)”要怎么办呢?下面就来看看小编为大家提…
-
jvm的垃圾回收机制:gc,是java提供的对于内存自动回收的机制。在 java 中,所有的对象都是要存在内存中的(也可以说内存中存储的是一个个对象),因此将内存回收,也可以叫做死…
-
一、jvm 执行流程程序在执行之前先要把 java 代码转换成字节码(class文件),jvm 首先需要把字节码通过一定的方式:类加载器(classloader) 把文件加载到内存…
-
芝奇国际今日宣布推出全球首个 ddr5-6000 cl32 256gb (64gbx4) 超大容量超频内存套装。据介绍,芝奇使用了最新高效能 sk 海力士 ddr5 芯片,首度将 …
-
键盘右边三个指示灯(通常为 caps lock、num lock 和 scroll lock)的功能是固定的,无法直接关闭。但这些指示灯的状态是可以根据用户的需求进行切换的。三个指…
-
很多朋友问部署deepseek到底需要什么样的配置,首要硬件当然是显卡,内存作为辅助,选择合适的型号同样重要,特别是生产力环境,推理能快一分钟都是实打实的提升。本文和大家分享下个人…
版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。
发表评论