admin管理员组

文章数量:1598362

1.问题描述

在使用 idea 时,经常卡顿,运行项目缓慢,启动慢,且内存消耗大。

2.问题原因

idea默认运行,启动内存为2048M,运行太多服务就会出现卡顿,为了全面释放 cpu 性能,提高 idea 性能,优化体验 ,故对 idea 的 jvm 进行配置优化。

3.解决方案

修改idea里面的 idea64.exe.vmoptions 的配置参数

注:此处修改idea里面的配置参数,而不是安装位置配置参数,修改安装位置不生效!!!

方式一:直接修改idea64.exe.vmoptions文件

修改位置参考:C:\Users\Administrator\AppData\Roaming\JetBrains\IntelliJIdea2023.2\ idea64.exe.vmoptions

方式二


在此出修改保存即可,配置参考下面。

注:参数不可重复!!!
idea默认会有一个 -Xms,-Xmx配置,修改完记得检查有无重复参数!!!
如果改完idea无法启动,卸载重装 重新配置即可。

3.本人电脑配置信息

4.修改配置参考

-server
-Xms4g
-Xmx4g
-Xmn3g
-XX:NewSize=3g
-XX:MaxNewSize=3g
-XX:MetaspaceSize=1g
-XX:MaxMetaspaceSize=1g
-XX:InitialCodeCacheSize=256m
-XX:ReservedCodeCacheSize=512m
-XX:+UseG1GC
-XX:G1HeapRegionSize=16M
-XX:MaxGCPauseMillis=200
-XX:ParallelGCThreads=12
-XX:ConcGCThreads=12
-XX:CICompilerCount=12
-XX:MaxInlineLevel=15
-XX:SoftRefLRUPolicyMSPerMB=500

## 开启分层编译
-XX:+TieredCompilation
-XX:TieredStopAtLevel=2
-XX:Tier4MinInvocationThreshold=100
-XX:Tier4InvocationThreshold=100
-XX:Tier4CompileThreshold=100

-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-ea
## 这个参数禁用了规范化路径缓存,可以避免在某些情况下出现文件锁定问题。
-Dsun.io.useCanonPrefixCache=false
## 这个参数让JVM优先使用IPv4网络栈。
-Djava.preferIPv4Stack=true
## 这个参数用于设置JDK HTTP认证中禁用的隧道协议。设置为空字符串""表示没有禁用任何协议。
-Djdk.http.auth.tunneling.disabledSchemes=""
## 这个参数允许JVM自我附加。这通常用于某些类型的监控和管理操作。
-Djdk.attach.allowAttachSelf=true
## 这个参数用于控制Kotlin协程的调试模式。设置为"off"表示关闭调试模式。
-Dkotlinx.coroutines.debug=off
## 用于控制Java 9及以上版本中的模块系统对非法访问的处理。在Java 9中,引入了模块系统,它对类的可见性进行了更严格的控制。默认情况下,如果一个类试图访问它不应该访问的另一个模块中的类,JVM会在控制台输出一个警告。
-Djdk.module.illegalAccess.silent=true

idea低配置jvm配置

-Xms1024m
-Xmx3072m
-XX:ReservedCodeCacheSize=2048m
-XX:MaxPermSize=512m
-XX:+UseG1GC
-XX:SoftRefLRUPolicyMSPerMB=50
-XX:CICompilerCount=2
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-XX:+IgnoreUnrecognizedVMOptions
-XX:CompileCommand=exclude,com/intellij/openapi/vfs/impl/FilePartNodeRoot,trieDescend
-ea
-Dsun.io.useCanonCaches=false
-Dsun.java2d.metal=true
-Djbr.catch.SIGABRT=true
-Djdk.http.auth.tunneling.disabledSchemes=""
-Djdk.attach.allowAttachSelf=true
-Djdk.module.illegalAccess.silent=true
-Dkotlinx.coroutines.debug=off


--add-opens=java.base/jdk.internal.objectweb.asm=ALL-UNNAMED
--add-opens=java.base/jdk.internal.objectweb.asm.tree=ALL-UNNAMED
-javaagent:C:\Users\Administrator\AppData\Roaming\IntelliJIdea\active-agt.jar

其他配置参数可参考:
IDEA JVM参数配置详解

本文标签: IDEAJVM