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重新分配内存。

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

(0)

相关推荐

  • IntelliJ IDEA设置JVM运行参数的操作方法

    打开 IDEA 安装目录,看到有一个 bin 目录,其中有两个 vmoptions 文件,需针对不同的JDK进行配置: 32 位:idea.exe.vmoptions 64 位:idea64.exe.vmoptions -Xms512m -Xmx1024m -XX:MaxPermSize=512m -XX:ReservedCodeCacheSize=225m -XX:+UseConcMarkSweepGC -XX:SoftRefLRUPolicyMSPerMB=50 -ea -Dsun.io.u

  • IDEA设置JVM运行参数的方法步骤

    前言 有时候我们需要在程序运行的时候对程序设置环境变量,恰巧我也遇到了这个问题,所以在此记录一下IDEA是如何设置环境变量的. 作用   -Dproperty=Value 该参数通常用于设置系统级全局变量值,如配置文件路径,保证该属性在程序中任何地方都可访问.当然,也可以通过在程序中使用System.setProperty进行设置. 注意: 1.如果-Dproperty=value的value中包含空格,可以将value使用引号引起来.例如:-Dmyname="hello world"

  • idea中安装VisualVM监控jvm的图文教程

    一.安装VisualVM插件 二.配置VisualVM 三.启动项目 会自动弹出界面 四.完成 总结 到此这篇关于idea中安装VisualVM监控jvm的图文教程的文章就介绍到这了,更多相关idea安装VisualVM内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

  • IdeaGo启动报错Failed to create JVM的问题解析

    [内容]: 问题情况 出现之前做了什么 出错之前通过这个功能增加了个错误的vm参数:-agent:xxx.jar 怎么办? 百度了一圈,都是让删掉:C盘\用户\用户名\.IntelliJIdea2019.3\config\idea64.exe.vmoptions 然而,我这并没有这个文件.百思不得其解,重装等各种方式都试过还是不能用. 思考之: 1.这明显是一个用户下的配置文件,因此肯定是配置文件使用到了用户级别的,改idea下的配置文件肯定是没用的. 2.明显是因为我修改了VM 参数导致的,网

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

    有时我们会遇到 java.lang.OutOfMemoryError 的问题,可能会需要设置jvm运行参数 作用 -Dproperty=Value 该参数通常用于设置系统级全局变量值,如配置文件路径,保证该属性在程序中任何地方都可访问.当然,也可以通过在程序中使用System.setProperty进行设置. 注意: 1.如果-Dproperty=value的value中包含空格,可以将value使用引号引起来.例如:-Dmyname="hello world". 2.如果配置了-Dp

  • java启动如何设置JAR包内存大小

    目录 java启动设置JAR包内存大小 给自己的jar包运行时分配内存大小 JVM的一些参数设置 总结 java启动设置JAR包内存大小 亲测可用! java -Xms256m -Xmx512m -XX:PermSize=128M -XX:MaxPermSize=256M -jar a.jar -Xms256m -Xmx512m: 对象使用的内存,也称堆内存 PermSize 类使用的内存,也称永久内存 由于Spring-boot内置tomcat,默认内存占用可能很大,最好设置下jar启动占用的

  • JVM中堆内存和栈内存的区别

    Java把内存分成两种,一种叫做栈内存,一种叫做堆内存 在函数中定义的一些基本类型的变量和对象的引用变量都是在函数的栈内存中分配.当在一段代码块中定义一个变量时,java就在栈中为这个变量分配内存空间,当超过变量的作用域后,java会自动释放掉为该变量分配的内存空间,该内存空间可以立刻被另作他用. 堆内存用于存放由new创建的对象和数组.在堆中分配的内存,由java虚拟机自动垃圾回收器来管理.在堆中产生了一个数组或者对象后,还可以在栈中定义一个特殊的变量,这个变量的取值等于数组或者对象在堆内存中

  • 老生常谈JVM的内存溢出说明及参数调整

    对于JVM的内存写过的文章已经有点多了,而且有点烂了,不过说那么多大多数在解决OOM的情况,于此,本文就只阐述这个内容,携带一些分析和理解和部分扩展内容,也就是JVM宕机中的一些问题,OK,下面说下OOM的常见情况: 第一类内存溢出,也是大家认为最多,第一反应认为是的内存溢出,就是堆栈溢出: 那什么样的情况就是堆栈溢出呢?当你看到下面的关键字的时候它就是堆栈溢出了: java.lang.OutOfMemoryError: ......java heap space..... 也就是当你看到hea

  • Eclipse IDE中如何设置JVM启动参数

    目录 如何设置JVM启动参数 下面是一些设置的步骤 在Eclipse上手动设置jvm参数 典型设置 如何设置JVM启动参数 关于<深入理解Java虚拟机>里面测试OutOfMemoryError异常的部分,需要对虚拟机的启动参数进行设置 下面是一些设置的步骤 1. 右键选择项目,在弹出的菜单进行选择 2. 在弹出的Debug Configurations面板,左侧的type filter text下面选择Java Application,找到自己的项目,例如我的项目HeapOOM. 3. 在D

  • Docker tomcat的设置内存大小配置方式

    安装再docker中的tomcat,在下载大文件或者某些情况下,会出现tomcat的内存溢出等情况,所以需要配置tomcat的内存大小,docker中的tomcat内存大小配置有两种方式: 一.挂载docker中的配置文件 通过将docker中tomcat的catalina.sh配置文件挂载到宿主机中,然后再catalina.sh配置jvm内存大小即可. 1.需要重新运行一个tomcat容器(注意: 端口和容器名称不能重复) docker run -d \ -v /server/webapps:

  • android开发教程之用命令启动android模拟器并设置其内存大小

    用命令启动android模拟器并设置其内存大小的代码 在终端里输入 复制代码 代码如下: emulator -avd Android2.3 -partition-size 512

  • 分别在Linux和Windows下设置JVM内存的简单方法

    Linux服务器: 在/usr/local/apache-tomcat-5.5.23/bin 目录下的catalina.sh 添加:JAVA_OPTS='-Xms512m -Xmx1024m' 或者 JAVA_OPTS="-server -Xms800m -Xmx800m -XX:MaxNewSize=256m" 或者 CATALINA_OPTS="-server -Xms256m -Xmx300m" Windows服务器: 在/apache-tomcat-5.5.

  • IntelliJ IDEA设置显示内存指示器和设置内存大小的方法

    一.设置显示内存指示器 idea默认情况下,是不显示当前内存使用情况的,可以通过设置让其显示,方法如下: 打开Preferences-->Appearance & Behavior-->Appearance,右侧勾选Window Options下面的Show memory indicator即可.如下图: [外链图片转存失败(img-uHIFk4f0-1568595892191)(images/04_01.png)] 设置好之后,在idea右下角会出现展示内存信息指示器,显示当前使用的

随机推荐