前一段時(shí)間在Eclipse中調(diào)試工程的時(shí)候,會(huì)報(bào)出內(nèi)存不足,然后可以取消但是幾次之后Eclipse就會(huì)死在哪里,不得不結(jié)束重啟。曾經(jīng)從資料上看到,可能是Eclipse的自動(dòng)構(gòu)建導(dǎo)致消耗了內(nèi)存,但是取消自動(dòng)構(gòu)建后每次調(diào)試的時(shí)候不得不手工構(gòu)建,有時(shí)候忘記了就會(huì)導(dǎo)致調(diào)試不出結(jié)果。今天又學(xué)到了一招,怎么解決。
可以增大java虛擬機(jī)內(nèi)存,在Eclipse的安裝目錄有Eclipse的配置文件eclipse.ini,修改它就可以了
-vmargs
-Xms40m
-Xmx400m
其中-vmargs指這個(gè)參數(shù)是用于java的虛擬機(jī)(virtual machine)的,-Xms表示最小值,-Xmx表示最大值,可以根據(jù)機(jī)器的具體情況設(shè)置最大值。
除了修改配置文件的辦法之外,還可以通過設(shè)置啟動(dòng)參數(shù)的辦法,新建一個(gè)Eclipse快捷方式,在快捷方式屬性的目標(biāo)框中后添加:-vmargs -Xmx300M -XX:MaxPermSize=256M
-Xmx400M 表示將eclipse分配的內(nèi)存從默認(rèn)的256M增加到400M
-XX:MaxPermSize=256M 表示將eclipse長期保持的內(nèi)存由默認(rèn)的64M增加到256M
注意:上面兩個(gè)數(shù)字的差必須大于-Xmx數(shù)值的5%。
2.
打開eclipse,選擇Window--Preferences...在對(duì)話框左邊的樹上雙擊Java,再雙擊Installed JREs,在右邊選擇前面有對(duì)勾的JRE,再單擊右邊的“Edit”按鈕,
出現(xiàn)一個(gè) Edit JRE 的對(duì)話框,在其中的Default VM Arguments: 框中輸入 -Xms128m -Xmx512m ,這樣設(shè)置Java擬虛機(jī)內(nèi)存使用最小是128M,最大是512M,再單擊“OK”關(guān)閉 Edit JRE 對(duì)話框,再單擊“OK”關(guān)閉 Preferences對(duì)話框,Eclipse一下子就運(yùn)行快了起來,呵~
或者是
可以在eclipse.ini文件中將默認(rèn)設(shè)置改為-vmargs -Xms128M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M或者更大,這要看你自己機(jī)器的內(nèi)存配置而定,如果這樣解決不了就右擊eclipse快捷方式,在屬性---快捷方式標(biāo)簽下---目標(biāo)中輸入E:\eclipse-SDK-3.2RC7-win32\eclipse\eclipse.exe -clean -vmargs -Xms128M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M其中E:\eclipse-SDK-3.2RC7-win32\eclipse\eclipse.exe是我的eclipse的位置,就可以了
再一種情況就是看看電腦是不是安裝了什么惡意插件!把它們都清楚掉就可以了!
3.內(nèi)存插件
eclipse加速插件keepresident http://suif.stanford.edu/pub/keepresident
.eclipse加速插件keepresident http://suif.stanford.edu/pub/keepresident 如果你的machine內(nèi)存少于700m,那么該插件實(shí)在能讓你的eclipse快起來,不再像以前那樣,動(dòng)不動(dòng)就僵住了. 其原理是利用兩個(gè) windows api - setprocessworkingsetsize 與 virtuallock,實(shí)得windows操作系統(tǒng)盡量不把 java進(jìn)程的內(nèi)存pageout到硬盤,多hold住一些物理內(nèi)存給java進(jìn)程使用.這樣當(dāng)java process定期垃圾回收時(shí)就 不會(huì)表現(xiàn)得僵住了.