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