NetBeans優化的目的是提升NetBeans的啓動速度和運行速度。下面介紹的NetBeans優化技巧是在版本6.0beta2上的優化。通過實驗,大大提升了NetBeans的啓動速度.java
1,修改英文netbeans界面字體大小,修改%Netbeans_home%\etc\netbeans.conf算法
在netbeans_default_options里加上 –fontsize 13編輯器
2,修改JVM內存配置(本機內存1G,不一樣內存大小不一樣設置)性能
在netbeans_default_options里加上 -J-Xmx512m,同時修改-J-Xms256m。測試
【說明】-J-Xms32m字體
此設置用於通知 Java 虛擬機將其初始堆大小設置爲 32 MB。經過通知 JVM 它最初應該爲堆分配多少內存,咱們能夠防止它隨着 IDE 使用更多的內存而將堆增大。優化
【說明】-J-Xmx128mspa
此設置用於指定 Java 虛擬機應該用於堆的最大內存。對此數值設置硬性上限意味着 Java 進程不能使用比可用的物理 RAM 更多的內存。對於具備更多內存的系統能夠提高此限制 – 128 MB 設置有助於確保 IDE 在 256MB 的系統上可靠地執行操做。注意:不要將此值設置爲接近或大於系統中的物理 RAM 數,不然在主要回收過程當中將致使頻繁的交換空間操做。.net
3,在netbeans_default_options裏修改 -J-XX:PermSize=20mxml
這是一個較特殊的 JVM 開關,但它也縮短了啓動時間。此設置用於調整內存中「永久區域」(在這裏保存類)的大小。因爲咱們知道全部 IDE 類均佔用特定數量的內存,所以咱們向 JVM 提示它將須要的內存數量。此設置消除了許多系統上啓動過程當中的主要垃圾回收事件。SunONE Studio 或包括更多模塊的其餘 IDE 的用戶可能但願將此數值設置得更高些。
4,在netbeans_default_options里加上-J-Xverify:none
此開關用於關閉 Java 字節碼驗證,從而加快類加載,以及消除在啓動過程當中僅爲驗證目的而加載類的須要。此開關將顯著縮短啓動時間。
5,在Tools-Plugins-installed裏面把不須要的模塊去掉
我這裏去掉了 Glashfish;JSF;CVS;Subversion等。速度就獲得很大提升了。固然若是你的開發須要這些模塊就不須要去掉了。
6,修改編輯器配置
把全部的Javadoc自動彈出窗口去掉,把全部自動完成延時設置爲0,把全部自動完成大小寫敏感去掉。
注:在netbeans6的JAVA代碼編輯器設置裏面默認沒有設置代碼自動完成的延時設置了。能夠本身手動加入到配置文件C:\Documents and Settings\%USER_NAME%\.netbeans\6.0beta2\config\Editors\text\x-java下的 properties.xml,加入
【說明】 preperties.xml文件默認不存在,只有在你修改了編輯器配置之後纔會出現這個文件。
根據經驗,Xmx應設爲物理內存的一半,初始堆大小Xms是Xmx的1/2,好比1G內存的機器,Xms256m, Xmx512m
Netbeans5.5.1默認的PermSize是160m,若是在開發中常常遇到 java.lang.OutOfMemoryError: PermGen space的異常,能夠將此PermSize設大一些。
下面列出了一些其餘的 JVM 開關,在一些系統(而不是全部系統)上,這些開關會或多或少地影響 NetBeans 性能。儘管使用它們會產生必定的影響,但仍值得一試。
* -J-XX:CompileThreshold=100
此開關將會延長啓動時間,緣由是:與不使用此開關的狀況相比,HotSpot JVM 會以更快的速度將更多的方法編譯到本地代碼中。其結果是提升了IDE 運行時的性能,這是由於更多的 UI 代碼將被編譯而不是被解釋。此值表示在編譯一個方法以前必須調用它的次數。
* -J-XX:+UseConcMarkSweepGC -J-XX:+UseParNewGC
若是出現垃圾回收意外中斷的問題,則請嘗試使用這些開關。此開關致使 JVM 對主要垃圾回收事件(若是在多處理器工做站上運行,則也適用於次要回收事件)使用不一樣的算法,這些算法不會影響整個垃圾回收進程。若是使用了 PermSize 開關,則還應向 netbeans.conf 文件中添加行 -J-XX:+CMSClassUnloadingEnabled,以便啓用類卸載(使用此回收器時,缺省狀況下不啓用類卸載)。注意:目前尚不肯定此回收器是提升仍是下降單處理器計算機的性能。
* -J-XX:+UseParallelGC
某些測試代表,至少在內存配置至關好的單處理器系統中,使用此回收算法能夠將次要垃圾回收的持續時間減小一半。請注意,這是一個矛盾的問題 – 事實上此回收器主要適用於具備千兆字節堆的多處理器系統。尚無可用數據代表它對主要垃圾回收的影響。注意:此回收器與 -J-XX:+UseConcMarkSweepGC 是互斥的。能夠在性能 Web 站點上找到支持使用此算法的度量數據。
* -J-XX:+UseConcMarkSweepGC-J-XX:+CMSClassUnloadingEnabled-J-XX:+CMSPermGenSweepingEnabled,是優化垃圾回收的
愈來愈以爲netbeans用着隨手,但最近總是假死,因此找了這篇文章對NetBeans優化了下,沒想到效果很明顯。嘿嘿,若是你的netbeans也很慢點話,不妨一試。