IDEA设置JVM可分配内存大小和其他参数的教程

 更新时间:2021年01月05日 16:46:42   作者:就是为了年薪百万  
这篇文章主要介绍了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重新分配内存。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

相关文章

  • Springboot错误页面和错误信息定制操作

    Springboot错误页面和错误信息定制操作

    这篇文章主要介绍了Springboot错误页面和错误信息定制操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-10-10
  • java如何实现获取客户端ip地址的示例代码

    java如何实现获取客户端ip地址的示例代码

    本文主要介绍了java如何实现获取客户端ip地址,主要包括java获取客户端ip地址工具类使用实例、应用技巧,文中通过示例代码介绍的非常详细,感兴趣的小伙伴们可以参考一下
    2022-04-04
  • java项目依赖包选择具体实现类示例介绍

    java项目依赖包选择具体实现类示例介绍

    这篇文章主要为大家介绍了java项目依赖包选择具体实现类示例介绍,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-12-12
  • Java中的泛型详细解析

    Java中的泛型详细解析

    这篇文章主要介绍了Java中的泛型详细解析,泛型又称参数化类型,是JDK5.0出现的新特性,解决了数据类型的安全型问题,Java泛型可以保证如果程序在编译时没用发出警告,运行时就不会产生classCastException异常,需要的朋友可以参考下
    2024-01-01
  • SpringBoot框架配置文件路径设置方式

    SpringBoot框架配置文件路径设置方式

    这篇文章主要介绍了SpringBoot框架配置文件路径设置方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-11-11
  • logstash将mysql数据同步到elasticsearch方法详解

    logstash将mysql数据同步到elasticsearch方法详解

    这篇文章主要为大家介绍了logstash将mysql数据同步到elasticsearch方法详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-12-12
  • 使用Postman传递arraylist数据给springboot方式

    使用Postman传递arraylist数据给springboot方式

    这篇文章主要介绍了使用Postman传递arraylist数据给springboot方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • 浅析Java的Hibernate框架中的缓存和延迟加载机制

    浅析Java的Hibernate框架中的缓存和延迟加载机制

    这篇文章主要介绍了Java的Hibernate框架中的缓存和延迟加载机制,Hibernate是注明的Java下SSH三大web开发框架之一,需要的朋友可以参考下
    2015-11-11
  • 了解java架构之微服务架构—雪崩效应

    了解java架构之微服务架构—雪崩效应

    这篇文章主要介绍了了解java架构之微服务架构—雪崩效应,微服务化产品线,每一个服务专心于自己的业务逻辑,并对外提供相应的接口,看上去似乎很明了,其实还有很多的东西需要考虑,,需要的朋友可以参考下
    2019-06-06
  • Jax-rs规范REST接口文件上传代码实例

    Jax-rs规范REST接口文件上传代码实例

    这篇文章主要介绍了Jax-rs规范REST接口文件上传代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09

最新评论