IntelliJ IDEA優(yōu)化配置的實(shí)現(xiàn)
默認(rèn)配置
默認(rèn)配置比較低,打開(kāi)稍大點(diǎn)的項(xiàng)目就很容易卡掉,所以最好擴(kuò)大一下內(nèi)存。
IntelliJ IDEA的VM配置
IntelliJ IDEA2020版本已經(jīng)有中文漢化插件的,不熟悉英文的可以安裝一下,配置VM的菜單見(jiàn)'幫助' -> '編輯自定義VM選項(xiàng)'。
直接上配置。
# custom IntelliJ IDEA VM options##################JVM模式############################# IDEA的JVM以Server模式啟動(dòng)(新生代默認(rèn)使用ParNew)-server##################內(nèi)存分配############################# 堆初始值占用-Xms2048m# 堆最大值占用-Xmx3500m# Metaspace 空間大小-XX:MaxMetaspaceSize=512m-XX:MetaspaceSize=128m# 強(qiáng)制JVM在啟動(dòng)時(shí)申請(qǐng)到足夠的堆內(nèi)存(否則IDEA啟動(dòng)時(shí)堆初始大小不足3g)# -XX:+AlwaysPreTouch# 年輕代與老年代比例為1:3(默認(rèn)值是1:4),降低年輕代的回收頻率-XX:NewRatio=3# 每個(gè)線程堆棧的大小 2m# -Xss2m##################老年代回收器############################# 使用CMS老年代回收器# -XX:+UseConcMarkSweepGC# CMS的重新標(biāo)記步驟:多線程一起執(zhí)行# -XX:+CMSParallelRemarkEnabled# 使用 G1 (Garbage First) 垃圾收集器 (因?yàn)楸镜厥荍DK版本是JDK8,所以啟用G1收集器,8以下的可以試用CMS收集器)-XX:+UseG1GC# 設(shè)置垃圾收集器在并行階段使用的線程數(shù)[一般設(shè)置為本機(jī)CPU線程數(shù)相等,即本機(jī)同時(shí)可以處理的個(gè)數(shù),設(shè)置過(guò)大也沒(méi)有用]-XX:ParallelGCThreads=4# 并發(fā)垃圾收集器使用的線程數(shù)量 啟用4個(gè)線程并發(fā)標(biāo)記(理論上越多越好,前提是CPU核心足夠多)-XX:ConcGCThreads=2##################JIT編譯器############################# 代碼緩存,用于存放Just In Time編譯后的本地代碼,如果塞滿,JVM將只解釋執(zhí)行,不再編譯native代碼。-XX:ReservedCodeCacheSize=512m# 分層編譯,JIT編譯優(yōu)化越來(lái)越好,IDEA運(yùn)行時(shí)間越久越快-XX:+TieredCompilation# 節(jié)省64位指針占用的空間,代價(jià)是JVM額外開(kāi)銷# -XX:+UseCompressedOops# 增大軟引用在JVM中的存活時(shí)長(zhǎng)(堆空閑空間越大越久)-XX:SoftRefLRUPolicyMSPerMB=50-Dsun.io.useCanonCaches=false-Djava.net.preferIPv4Stack=true# -Djsse.enableSNIExtension=false##################日志############################# 禁止在啟動(dòng)期間顯式調(diào)用System.gc()-XX:+DisableExplicitGC# 字體-Dawt.useSystemAAFontSettings=lcd# 關(guān)閉 fast throw 優(yōu)化-XX:-OmitStackTraceInFastThrow-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log# 當(dāng)堆內(nèi)存空間溢出時(shí)輸出堆的內(nèi)存快照-XX:+HeapDumpOnOutOfMemoryError-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof# 打印GC詳細(xì)信息-XX:+PrintGCDetails# 打印CG發(fā)生的時(shí)間戳-XX:+PrintGCTimeStamps# 每一次GC前和GC后,都打印堆信息-XX:+PrintHeapAtGC-Xbootclasspath/a:../lib/boot.jar-Dfile.encoding=UTF-8-XX:MaxInlineLevel=3##################其他設(shè)置############################# 啟動(dòng)斷言-ea-Dsun.java2d.renderer=sun.java2d.marlin.MarlinRenderingEngine# 去除字節(jié)碼驗(yàn)證-Xverify:none
插件
IntelliJ IDEA 安裝了大量的插件,可以根據(jù)自己的習(xí)慣取消掉一些。選擇“幫助” -> '活動(dòng)監(jiān)視器'可以看到內(nèi)部活動(dòng)占CPU的百分比,如果有沒(méi)必要的活動(dòng)占據(jù)了大量的插件,那么可以停掉該插件,或者直接卸載。
活動(dòng)監(jiān)視器
插件的啟動(dòng)性能分析
相信我,你并不需要那么多的智能提示。阿里巴巴的代碼檢查挺好的,但是如果性能不允許,可以關(guān)閉實(shí)時(shí)監(jiān)測(cè),而且在代碼編寫的時(shí)候,可能會(huì)跟某些工具類產(chǎn)生沖突,比如Vert.x,導(dǎo)致CPU跑慢,只能殺死進(jìn)程。
到此這篇關(guān)于IntelliJ IDEA優(yōu)化配置的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)IDEA優(yōu)化配置內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. asp.net core項(xiàng)目授權(quán)流程詳解2. IntelliJ IDEA設(shè)置背景圖片的方法步驟3. ajax實(shí)現(xiàn)頁(yè)面的局部加載4. Python調(diào)用Redis的示例代碼5. WML的簡(jiǎn)單例子及編輯、測(cè)試方法第1/2頁(yè)6. asp讀取xml文件和記數(shù)7. Spring Cloud 優(yōu)雅下線以及灰度發(fā)布實(shí)現(xiàn)8. UDDI FAQs9. ASP和PHP文件操作速度的對(duì)比10. SpringBoot后端接口的實(shí)現(xiàn)(看這一篇就夠了)
