前置條件:
發現Eclipse啟動越來越慢,等待Android項目Libraries匯入時各種紅色的xx和小紅斑看得人一陣雞皮疙瘩……表示不能忍。
啟動慢
Eclipse啟動慢主要有兩種現象:
a. 狂讀硬碟
b. CPU利用率嚇人
原因:
上述兩種情況都有,則主要是記憶體太小或運行參數設定的問題;
如果是後一種現象,則很可能是工程垃圾過多造成的。
解決法辦:
1.實體記憶體太小,加之;否則,修改Eclipse安裝目錄下的Eclipse.ini中的運行參數設定:
Eclipse啟動預設heap大小 |
1G(根據本機物理情況適當增大記憶體參數) |
雙核CPU |
-vmargs -Xms40m -Xmx256m |
-vmargs -Xms128M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M |
-XX:+UseParallelGC 讓GC可以更快的執行 (jdk5新增) |
2.清理工程垃圾:
目前發現的主要垃圾是Usage Data Recording Plug-in 外掛程式在關閉Eclipse時產生的
.刪除workspace/.metadata/plugin/org.eclipse.epp.usagedata.recording目錄下的
xxx321.csv檔案;
.Window - Preferences - General - startup and shutdown,在startup列表中去掉該外掛程式(其他不需要的亦可同時去掉)。
補充:
A. Eclipse的版本也可能是影響其相應速度的因素。應盡量選用正式release版本。
B..(關閉網卡)Window - Preferences - General - Network Connection的ssh子項裡,eclipse自動找到了本機存放區ssh密鑰的目錄,並在裡面找到了儲存在本地的串連x.x.x.x的記錄和指紋,並將它添加到了Known Hosts中。這樣在eclipse每次啟動的時候,就會去訪問這個IP地址,而無法訪問到這個IP地址時,可能由於eclipse預設的逾時時間比較長,導致啟動非常的緩慢。把x.x.x.x從已知主機(Known Hosts)中刪除,再開啟網卡,OK。
/**
****************************************************************************
*/
Eclipse啟動參數(Command Arguments)
可查看Help - Installation Details - Configuration.
-arch [processor architecture]
描述:指定所使用的處理器的類別
舉例:eclipse -arch x86或eclipse -arch sparc
-application [id]
描述:指定要啟動並執行應用,id為擴充org.eclipse.core.applications擴充點的外掛程式id加擴充id
舉例:例如有個外掛程式id為edu.sdu.app,擴充id為myapp,則eclipse -application edu.sdu.app.myapp,就會執行你的擴充應用
-clean
描述:清空外掛程式緩衝內容
舉例:eclipse -clean,有時外掛程式顯示不出來是因為Eclipse將外掛程式進行了緩衝以加速啟動過程,若指定此參數則會清空緩衝,從頭載入
-configuration [cofigfile location]
描述:指定設定檔的位置,在啟動時使用此目錄下的設定檔config.ini來啟動
舉例:eclipse -configuration d:/eclipse/configuration
-data [workspace location]
描述:指定啟動時的Workspace位置
舉例:例如Workspace位置設在D:/myworkspace,則eclipse -data D:/myworkspace
-debug [option file]
描述:以Debug狀態啟動Eclipse,所有的Debug開關在.options檔案中指定
舉例:eclipse -debug d:/eclipse/.options
-dev [classpath entry]
描述:以開發狀態啟動Eclipse,這會添加所有指定的路徑作為每個外掛程式的Classpath
舉例:例如eclipse -dev bin,會將產生在bin目錄下的所有類載入到類路徑中,這在開發外掛程式時非常有用
-nosplash
描述:指定啟動時不顯示閃屏
舉例:eclipse -nosplash
-vm [jre path]
描述:指定啟動時所使用的Java虛擬機器
舉例:例如要使用自己的Java虛擬機器,則eclipse -vmD:/j2sdk1.4.2_04/jre/bin/java.exe,這樣還有一個好處,就是可以開啟一個Console,能夠顯示控制台資訊,當然若使用eclipse -vm D:/j2sdk1.4.2_04/jre/bin/javaw.exe則不會再顯示控制台
-vmargs [Java VM arguments]
描述:指定啟動時要使用的Java虛擬機器參數
舉例:例如要指定使用的記憶體容量,則eclipse -vmargs "-Xms256m -Xmx1024m"
註:此參數一定要放在所有參數變數的最後面