1.问题截图
2.解决方式
操作完成后清理缓存重启IDEA即可
1.idea清理缓存
3.idea64.exe.vmoptions文件的参数了解
idea64.exe.vmoptions
和idea.exe.vmoptions
两个文件都是IntelliJ IDEA的可执行文件的VM(虚拟机)配置文件
,简单来说就是IDEA配置虚拟机参数的位置,不过前者对应的时64位IDEA,后者对应的是32D位的IDEA。
参数 | 意义 |
-Xms128m | Java Heap初始值,Server端JVM最好将-Xms和-Xmx设为相同值,开发测试机JVM可以保留默认值 |
-Xmx750m | Java Heap最大值,默认值为物理内存的1/4,最佳设值应该视物理内存大小及计算机内其他内存开销而定 |
-XX:ReservedCodeCacheSize=240m | 预留保存代码的内存空间大小 |
-XX:+UseConcMarkSweepGC | 老年代使用 CMS 垃圾回收策略(并发标记清除) |
-XX:SoftRefLRUPolicyMSPerMB=50 | 每兆堆空闲空间中SoftReference的存活时间,LRU(Least Recently Used)最近最少使用。意思是最近最少被引用的软引用 将在50秒后被JVM清除。单位为秒。 |
-ea | ea 开启断言 -da 禁止断言 |
-Dsun.io.useCanonCaches=false | 使用佳能内存??? |
-Djava.net.preferIPv4Stack=true | 如果在使用ipv4的机器上运行启用了ipv6的系统,那么此参数设为true才能获取机器的完整机器名 |
Djdk.http.auth.tunneling.disabledSchemes="" | 根据域名自动下载https服务端发送过来的证书并保存成文件,可参考:java自动下载https网站的证书并保存成文件(包括连接代理,代理认证,jdk.http.auth.proxying.disabledSchemes参数设置)_copbint的博客-CSDN博客_java 保存证书 |
-XX:+HeapDumpOnOutOfMemoryError | 当堆内存空间溢出时输出堆的内存快照 |
-XX:-OmitStackTraceInFastThrow | 可参考:https://www.jianshu.com/p/cc1bd35466cb |
//常见配置汇总
//堆设置
-Xms:初始堆大小
-Xmx:最大堆大小
-XX:NewSize=n:设置年轻代大小
-XX:NewRatio=n:设置年轻代和年老代的比值.如:为3,表示年轻代与年老代比值为1:3,年轻代占整个年轻代年老代和的1/4
-XX:SurvivorRatio=n:年轻代中Eden区与两个Survivor区的比值.注意Survivor区有两个.如:3,表示Eden:Survivor=3:2,一个Survivor区占整个年轻代的1/5
-XX:MaxPermSize=n:设置持久代大小
//收集器设置
-XX:+UseSerialGC:设置串行收集器
-XX:+UseParallelGC:设置并行收集器
-XX:+UseParalledlOldGC:设置并行年老代收集器
-XX:+UseConcMarkSweepGC:设置并发收集器
//垃圾回收统计信息
-XX:+PrintGC
-XX:+PrintGCDetails
-XX:+PrintGCTimeStamps
-Xloggc:filename
//并行收集器设置
-XX:ParallelGCThreads=n:设置并行收集器收集时使用的CPU数.并行收集//线程数.
-XX:MaxGCPauseMillis=n:设置并行收集最大暂停时间
-XX:GCTimeRatio=n:设置垃圾回收时间占程序运行时间的百分比.公式为1/(1+n)
//并发收集器设置
-XX:+CMSIncrementalMode:设置为增量模式.适用于单CPU情况.
-XX:ParallelGCThreads=n:设置并发收集器年轻代收集方式为并行收集时,使用的CPU数.并行收集线程数.