轉自:
http://www.aygfsteel.com/leekiang/archive/2010/02/11/312575.html
最近裝了個新的系統,為了與時俱進,把原來的MyEclipse6.5也換成了MyEclipse8.0, 結果發現換了版本后,MyEclipse狂吃內存,原本基本上就保持在2,300M的內存,這次動不動就5,600M,有時甚至要1G,實在忍無可忍,就網上收集了有關解決 MyEclipse 耗內存的方法,特整理如下:
1、老是彈出Quick update error 、關閉myeclipse的Quick Update自動更新功能
這個問題的解決辦法是關閉自動更新
Windows > Preferences > MyEclipse Enterprise Workbench > Community Essentials,
把選項 "Search for new features on startup"的前勾去掉即可。
2 、關閉updating indexes
Window > Preferences > Myeclipse Enterprise Workbench > Maven4Myeclipse > Maven>
禁用Download repository index updates on startup 。
如果是myeclipse7.5:
(1)關掉maven自動更新:
window-preferences-MyEclipse Enterprise Workbench-Maven4MyEclipse-Maven,
關閉所有Download和Update開頭的選項,共四項(去掉前面的勾)
(2)關閉更新調度:window –> preferences –> General –> Startup and Shutdown –> Automatic Updates Scheduler(去掉前面的勾)
(3)window –> preferences –>Myeclipse Dashboard,關閉Show……on start
3 、關閉MyEclipse的自動validation
validation有一堆,什么xml、jsp、jsf、js等等,我們沒有必要全部都去自動校驗一下,
只是需要的時候才會手工校驗一 下,速度立馬提升好幾個檔次
windows > perferences > myeclipse > validation
將Build下全部勾取消
如果你需要驗證某個文件的時候,我們可以單獨去驗證它。方法是:
在需要驗證的文件上( 右鍵 -> MyEclipse -> Run Validation 。
4、 啟動優化,關閉不需要使用的模塊
一個系統20%的功能往往能夠滿足80%的需求,MyEclipse也不例外,我們在大多數時候只需要20%的系統功能,
所以可以將一些不使用的模塊禁止 加載啟動。
Window > Preferences > General > Startup andy Shutdown 在這里列出的是MyEclipse啟動時加載的模塊
我這里只讓它加載tomcat5 勾選 MyEclipse EASIE Tomcat 5 。
怎樣才能知道哪些啟動項有用呢?我現在把我知道的啟動項用處說一下,還有很多不懂的,
希望大家懂的回復在下面 啊:
WTP :一個跟myeclipse差不多的東西,主要差別是 WTP 是免費的,如果使用myeclipse,這個可以取消
Mylyn:組隊任務管理工具,類似于 CVS ,以任務為單位管理項目進度,沒用到的可以取消
Derby:一種保存成 jar 形式的數據庫,我沒用到,取消
一大排以 MyEclipse EASIE 打頭的啟動項:myeclipse 支持的服務器,只選自己用的,其他取消,
比如我只選了 tomcat 。
5 、去掉MyEclipse的拼寫檢查(如果你覺的有用可以不去)
拼寫檢查會給我們帶來不少的麻煩,我們的方法命名都會是單詞的縮寫,他也會提示有錯,
所以最好去掉,沒有多大的用處
Window > perferences > General > Editors > Text Editors > Spelling > 將Enable spell checking復選框的勾選去掉。
6 、去掉MyEclipse繁雜的自帶插件自動加載項
Window > perferences > General > Startup and Shutdown > 將Plug-ins activated on startup
中的復選框有選擇性的勾 選去掉。
7 、修改MyEclipse編輯JSP頁面時的編輯工具
Window > perferences > General > Editors > File Associations >
在File types 中選擇 *.jsp > 在Associated editors 中將"MyEclipse JSP Editor"設置為默認。
據說修改此項的默認編輯器其實可以提高啟動速度
8 、修改MyEclipse安裝目錄的eclipse.ini文件,加大JVM的非堆內存
具體內容如下:
-clean
-showsplash
com.genuitec.myeclipse.product.ide
–launcher.XXMaxPermSize
256m
-vmargs
-Xms128m
-Xmx512m
-Duser.language=en
-XX:PermSize=128M
-XX:MaxPermSize=256M
把下面的那個 -XX:MaxPermSize 調大,比如 -XX:MaxPermSize=512M,再把 -XX:PermSize 調成跟
-XX:MaxPermSize一樣大
幾乎每次 eclipse 卡到當都是因為這個 非堆內存 不足造成的,把最大跟最小調成一樣是因為不讓 myeclipse 頻繁的換內存區域大小
注意:XX:MaxPermSize 和 Xmx 的大小之和不能超過你的電腦內存大小!
需要修改是-Xmx,-XX:MaxPermSize,-XX:ReservedCodeCacheSize,
將這三項的值調大,但并不是越大越好,曾經在相同的條件下做過測試(內存2GB),-Xmx,-XX:MaxPermSize的值為384m時比512m時要快(視具體的計算機而定),
-Xmx,-XX:MaxPermSize的值設為同樣大小且兩者之和不能超出你的計算機本身的內存大小
沒用的后臺自動更新,根據需要可以去除,Maven 這項目管理,自己用不到,把他后臺Download 關了,MyEclipse 的Dashboard 不給他自動啟動,關了他。
網上看的那些老優化教程有些優化已經過時了,像加大JVM的非堆內存, 要改eclipse .ini 文件,現在已經變成 myeclipse.ini 文件了,而且他已經是優化好的版本了:
-Xmx512m
-XX:MaxPermSize=256m
-XX:ReservedCodeCacheSize=64m
更改代碼提示快捷鍵
代碼提示快捷鍵,默認為ctrl+space,而我們輸入法切換也是,所以會有沖突。
windows–>perferences–>general–>Keys
更改 content assist 為 “alt+/” 或者“Shift+space”
如果采用“alt+/”,由于alt+/已經被word completion占用,所以得同時修改word completion的
第六步:Build Path中的一處改動解決jsp頁面編寫java代碼時“卡死”現象
現象:在編輯jsp文件時 在“<%%>”之間編寫代碼時,在彈出智能提示的時候MyEclips就會被“卡死”。
嘗試: 換版本,換系統,斷網絡。
原因:MyEclipse在智能提示的時候“自動訪問”網絡上sun公司的最新API文檔,這樣“斷開網絡”自然可以,但一邊編碼,一邊上網,可能也是 大家的“良好習慣”,魚和熊掌想要得兼。
方法:在項目上 右鍵 彈出 的菜單中找到“Build Path”,進入下一級 選擇“Configura Build Path”,逐級找到JRE System Libraries->charsets.jar->javadoc location,點擊右側“Remove”按鈕,即更改成為“javadoc location:(None)”,點擊OK,重啟 MyEclips 。
16、
window-preferences-MyEclipse Enterprise Workbench-Maven4MyEclipse-Maven,將Maven JDK改為電腦上安裝的JDK,即不使用myeclipse提高的JDK
登記add按鈕,選擇你的電腦上的JDK即可(注意:不是JRE,我的值為:Java6.014)
17、
window-preferences-MyEclipse Enterprise Workbench-Matisse4Myeclipse/Swing,將Design-time information(dt.jar) location 改用電腦安裝的JDK的dt.jar
(即不使用myeclipse提供的dt.jar,我的值為:C:\Java6.014\lib\dt.jar)
經過以上的優化,myeclipse的啟動時間可以減少2/3,Tomcat的啟動速度可以減少1/2(視具體情況而定),
特別16,17兩項的優化效果最明顯,如果只進行前幾項,優化的效果有限.
另外,使用myeclipse一段時間后,就會產生很多項目,即使這些項目是處于關閉狀態,myecliose在啟動時也會加載這些項目,這個過程會花費很多時間,所以,建議將不用的項目都delete掉,用的時候再import