Mac电脑下 Idea 修改内存参数不起作用的解决方法

论坛 期权论坛 编程之家     
选择匿名的用户   2021-5-23 05:48   44   0

使用idea的时候,如果同时打开多个工程,经常遇到内存被占满,导致异常卡顿,有时候提示内存溢出,这时可以通过增加Xmx的值来改善。但是应该如何调整Xmx值呢?为什么有人修改了Xmx值却不生效呢?本文做一下详细解释。

1、不生效的方法

网上找到的很多指导大家调整Xmx的方法一般如下:

1.1 在应用程序idea上右键-显示包内容:

1.2 然后打开bin下 idea.vmoptions,修改Xms、Xmx 然后保存,重启idea。

但是应该还是有很多小伙伴发现,此番操作并没有什么作用,idea还是卡,风扇还是呼呼响。

1.3 如何查看设置是否生效

其实你看通过查看idea右下角的两个数字来判断设置是否生效,如图:

这里989就是最大可用内存,也就是Xmx(少的一部分应该被idea自己占用了),862就是已使用内存。

如果你的右下角没有显示这个数字,可以通过点击做上角“Intellij IDEA” - "Preferences" - "Appearance" 进行设置,

勾选中 “Show memory indicator” ,ok 保存。

2、不生效的原因

2.1 修改不生效的原因是什么

首先,确认你是否真的重启了idea,重启是需要你把所有idea窗口都关闭掉之后再打开idea。

如果你确定真的重启过了还是不生效,那原因就剩下一个了:就是修改的文件不是idea真正使用的文件。

2.2 查找正确的配置

如果想知道你的idea允许究竟用的是哪个配置文件,可以找到 Contents - MacOS 下的 idea 可执行文件 双击运行一下

就会看到idea启动加载配置文件的路径如下:

我的idea使用的配置文件为:/Users/rcm/Library/Preferences/IdeaIC2018.1/idea.vmoptions

2.3 修改正确的配置

通过前往文件夹命令就可以直接找到这个文件,进行修改了。修改完保存,重启idea生效。

我修改后的配置内容如下:

-Xms1024m
-Xmx2048m
-XX:ReservedCodeCacheSize=1024m
-XX:+UseCompressedOops
-Dfile.encoding=UTF-8
-XX:+UseConcMarkSweepGC
-XX:SoftRefLRUPolicyMSPerMB=50
-ea
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-Xverify:none

-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log
-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof

主要修改的三个参数:

-Xms1024m
-Xmx2048m
-XX:ReservedCodeCacheSize=1024m

主要参数解释如下:

3、更便捷的方法

当然,你也可以通过一个更简单的方法进行设置:

点击 Help - Edit Custom VM Options , 在打开的文件中修改即可,修改完也是要重启idea (不要骂我~~~)

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP