個人Eclipse近幾天運行時速度奇慢,具體表現爲:windows
一、只要ECLIPSE啓動後,硬盤燈就狂閃,不停的讀盤;eclipse
二、發佈TOMCAT常常在0%;jvm
三、偶爾CPU佔滿;優化
網上講優化的文章無數,可是老是有用的卻不多,大部分是轉載甚至是抄襲的。在借鑑各個文章的作法並不斷嘗試後,個人問題終於解決了。ui
一、啓動參數的優化;插件
個人啓動參數爲:orm
-Xms976m -Xmx976m -XX:PermSize=128m -XX:MaxPermSize=128m -Xmn168m -XX:+DisableExplicitGC對象
其中XX:PermSize和XX:MaxPermSize是必須的,僅僅設置Xmx,常常出現ECLIPSE內存溢出的狀況;blog
減小jvm內存回收引發的eclipse卡的問題 :
這個主要是jvm在client模式,進行內存回收時,會停下全部的其它工做,帶回收完畢纔去執行其它任務,在這期間eclipse就卡住了。因此適當的增長jvm申請的內存大小來減小其回收的次數甚至不回收,就會是卡的現象有明顯改善。
主要經過如下的幾個jvm參數來設置堆內存的: ip
-Xmx512m | 最大總堆內存,通常設置爲物理內存的1/4 |
-Xms512m | 初始總堆內存,通常將它設置的和最大堆內存同樣大,這樣就不須要根據當前堆使用狀況而調整堆的大小了 |
-Xmn192m | 年輕帶堆內存,sun官方推薦爲整個堆的3/8 |
堆內存的組成 | 總堆內存 = 年輕帶堆內存 + 年老帶堆內存 + 持久帶堆內存 |
年輕帶堆內存 | 對象剛建立出來時放在這裏 |
年老帶堆內存 | 對象在被真正會回收以前會先放在這裏 |
持久帶堆內存 | class文件,元數據等放在這裏 |
-XX:PermSize=128m | 持久帶堆的初始大小 |
-XX:MaxPermSize=128m | 持久帶堆的最大大小,eclipse默認爲256m。若是要編譯jdk這種,必定要把這個設的很大,由於它的類太多了。 |
二、啓動插件優化:
windows - preference- general - startup and shutdown 裏,只保留第一、三、4,其餘所有取消,保留的爲:
Usage DAta Gathering Plug-in。
Equinox Provisioning Platform Automatic Updata Support。
WTP Webservice UI Plug-in。
如圖:
四、關閉驗證
windows - preference-Validation 所有取消,只保留Manual 列;
在工程上右鍵-Validation ,一樣所有取消,只保留Manual列,若是須要檢查代碼是否有錯,能夠在代碼文件上右鍵,手動驗證。
如圖:
五、清理工程文件
刪除工做空間目錄下.metadata\.plugins\org.eclipse.epp.usagedata.recording目錄裏的全部文件,主要要保留這個目錄,只刪除目錄下文件便可
在通過以上操做後,個人Eclipse不管是啓動仍是發佈或者是編譯工程,速度都提高了很多,特別是啓動。並且運行起來相對很流暢,閃退、假死和吃內存等一系列問題獲得基本解決。
以上僅供參考你們參考,歡迎反饋問題和建議,謝謝。
更多深度優化請參考:http://chaoxz2005.blog.163.com/blog/static/15036542013411105519685/