IDEA設(shè)置JVM可分配內(nèi)存大小和其他參數(shù)的教程
有時(shí)我們會(huì)遇到 java.lang.OutOfMemoryError 的問(wèn)題,可能會(huì)需要設(shè)置jvm運(yùn)行參數(shù)
作用-Dproperty=Value
該參數(shù)通常用于設(shè)置系統(tǒng)級(jí)全局變量值,如配置文件路徑,保證該屬性在程序中任何地方都可訪問(wèn)。當(dāng)然,也可以通過(guò)在程序中使用System.setProperty進(jìn)行設(shè)置。
注意:
1、如果-Dproperty=value的value中包含空格,可以將value使用引號(hào)引起來(lái)。例如:-Dmyname='hello world'。
2、如果配置了-Dproperty=value參數(shù),又在程序中使用了System.setProperty對(duì)同一個(gè)變量進(jìn)行設(shè)置,那么以程序中的設(shè)置為準(zhǔn)。
針對(duì)某個(gè)Application設(shè)置1、Run-->Edit Configurations
2、選中要添加JVM參數(shù)的Application,然后在Configuration里面的VM options中輸入想要添加的系統(tǒng)參數(shù)
1、找到IDEA安裝目錄中的bin目錄
2、找到idea.exe.vmoptions文件
3、打開(kāi)該文件編輯并保存。
代碼中的配置>Application中的配置>全局配置
補(bǔ)充:IntelliJ IDEA 修改內(nèi)存大小,運(yùn)行大項(xiàng)目再也不卡了
運(yùn)行大點(diǎn)的項(xiàng)目特別卡?沒(méi)關(guān)系,我們改一下IDEA的最大占用內(nèi)存就可以了。
怎樣查看IDEA內(nèi)存使用情況呢?
在 Settings -> Appearance & Behavior 設(shè)置窗口中,勾選 Show memory indicator 選項(xiàng),然后主界面右下角會(huì)顯示 Heap 總大小以及使用狀況了。
接下來(lái)找到idea*.exe.vmoptions,不同的操作系統(tǒng),文件名可能會(huì)不一樣,而且IDEA同時(shí)提供32位和64位的程序打開(kāi)方式,我經(jīng)常用的是Windows下64位的打開(kāi)方式,所以,就在IDEA安裝目錄(我安裝在默認(rèn)C:Program FilesJetBrainsIntelliJ IDEA 2017.2.3bin)下找到idea64.exe.vmoptions進(jìn)行修改
將以下三項(xiàng)改大大大大大大
然后重啟IDEA,迫不及待去看右下角的內(nèi)存指示器,!!!怎么還是默認(rèn)的數(shù)值?
查找一番資料之后,發(fā)現(xiàn)vmoptions文件簡(jiǎn)直是狡兔三窟啊,在IDEA安裝目錄下的bin文件夾里,有一個(gè)idea.bat文件,在這里面配置了vmoptions文件的位置
找到真正的位置(我的C:Userspharma.IntelliJIdea2017.2config,這個(gè)實(shí)際路徑對(duì)應(yīng)上圖紅框中帶參數(shù)的路徑),再次進(jìn)行修改
重啟IDEA,查看右下角內(nèi)存指示器,當(dāng)當(dāng)當(dāng)當(dāng),成功!
等等!似乎哪里不太對(duì)勁!!為什么我設(shè)置了最大內(nèi)存2048,指示器卻顯示2014?作為強(qiáng)迫癥的資深代表,實(shí)在不能忍啊!
算一算差了多少,一七得七,二七四十八,三八婦女節(jié),五一勞動(dòng)節(jié),六一兒童節(jié)... ...
算了,還是嚴(yán)謹(jǐn)一點(diǎn),運(yùn)行calc打開(kāi)計(jì)算器算一算吧
配置文件里再加34M
重啟IDEA,再次查看右下角內(nèi)存指示器,變成了完美的2048!
PS:為什么初始內(nèi)存也要設(shè)置1024M那么大?有文章這樣說(shuō):此值可以設(shè)置與-Xmx相同,以避免每次垃圾回收完成后JVM重新分配內(nèi)存。
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章:
1. Python+unittest+requests 接口自動(dòng)化測(cè)試框架搭建教程2. Java GZip 基于內(nèi)存實(shí)現(xiàn)壓縮和解壓的方法3. jsp+servlet簡(jiǎn)單實(shí)現(xiàn)上傳文件功能(保存目錄改進(jìn))4. 存儲(chǔ)于xml中需要的HTML轉(zhuǎn)義代碼5. Springboot 全局日期格式化處理的實(shí)現(xiàn)6. 利用CSS制作3D動(dòng)畫(huà)7. 一款功能強(qiáng)大的markdown編輯器tui.editor使用示例詳解8. .Net加密神器Eazfuscator.NET?2023.2?最新版使用教程9. SpringBoot+TestNG單元測(cè)試的實(shí)現(xiàn)10. PHP利用COM對(duì)象訪問(wèn)SQLServer、Access
