IDEA设置JVM可分配内存大小和其他参数的教程
有时我们会遇到 java.lang.outofmemoryerror 的问题,可能会需要设置jvm运行参数
作用
-dproperty=value
该参数通常用于设置系统级全局变量值,如配置文件路径,保证该属性在程序中任何地方都可访问。当然,也可以通过在程序中使用system.setproperty进行设置。
注意:
1、如果-dproperty=value的value中包含空格,可以将value使用引号引起来。例如:-dmyname="hello world"。
2、如果配置了-dproperty=value参数,又在程序中使用了system.setproperty对同一个变量进行设置,那么以程序中的设置为准。
针对某个application设置
1、run-->edit configurations
2、选中要添加jvm参数的application,然后在configuration里面的vm options中输入想要添加的系统参数
针对所有的application设置
1、找到idea安装目录中的bin目录
2、找到idea.exe.vmoptions文件
3、打开该文件编辑并保存。
优先级关系
代码中的配置>application中的配置>全局配置
补充:intellij idea 修改内存大小,运行大项目再也不卡了
运行大点的项目特别卡?没关系,我们改一下idea的最大占用内存就可以了。
怎样查看idea内存使用情况呢?
在 settings -> appearance & behavior 设置窗口中,勾选 show memory indicator 选项,然后主界面右下角会显示 heap 总大小以及使用状况了。
接下来找到idea*.exe.vmoptions,不同的操作系统,文件名可能会不一样,而且idea同时提供32位和64位的程序打开方式,我经常用的是windows下64位的打开方式,所以,就在idea安装目录(我安装在默认c:\program files\jetbrains\intellij idea 2017.2.3\bin)下找到idea64.exe.vmoptions进行修改
将以下三项改大大大大大大
然后重启idea,迫不及待去看右下角的内存指示器,!!!怎么还是默认的数值?
查找一番资料之后,发现vmoptions文件简直是狡兔三窟啊,在idea安装目录下的bin文件夹里,有一个idea.bat文件,在这里面配置了vmoptions文件的位置
找到真正的位置(我的c:\users\pharma\.intellijidea2017.2\config,这个实际路径对应上图红框中带参数的路径),再次进行修改
重启idea,查看右下角内存指示器,当当当当,成功!
等等!似乎哪里不太对劲!!为什么我设置了最大内存2048,指示器却显示2014?作为强迫症的资深代表,实在不能忍啊!
算一算差了多少,一七得七,二七四十八,三八妇女节,五一劳动节,六一儿童节... ...
算了,还是严谨一点,运行calc打开计算器算一算吧
配置文件里再加34m
重启idea,再次查看右下角内存指示器,变成了完美的2048!
ps:为什么初始内存也要设置1024m那么大?有文章这样说:此值可以设置与-xmx相同,以避免每次垃圾回收完成后jvm重新分配内存。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。