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也很慢点话,不妨一试。