修改eclipse目录下的eclipse.ini
-startup plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar --launcher.library plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.100.v20110502 -product org.eclipse.epp.package.java.product -showsplash org.eclipse.platform -- 修改的是如下参数 -vmargs -Dcom.sum.management.jmxremote -Dosgi.requiredJavaVersion=1.5 -Xverify:none -Xmx1024m -Xms1024m -Xmn384m -XX:PermSize=256m -XX:MaxPermSize=384m -XX:+DisableExplicitGC -Xnoclassgc -XX:+UseParNewGc -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=85
参数说明:
-Xverify:none -- 此处认为eclipse的字节码文件是可靠的, 则不需要启动的时候再进行校验。
-Xmx1024m -- 这里设定最大堆栈, 根据自己的机器的内存进行相应的调整。 -Xms1024m -Xmn384m
-XX:PermSize=256m -- 设定老年代(永久代)的内存, eclipse启动时因为老年代空间不足而引发多次FullGC 要知道FullGC的时间可是伤不起啊 -XX:MaxPermSize=384m
-XX:+DisableExplicitGC -- 进制代码调用gc()函数的功能, eclipse启动的时候代码调用了一次gc函数, 原因是默认的内存大小不足而考虑的, 现在调大了内存, 这个gc可以说是 画蛇添足了
-XX:+UseParNewGc -- 这里指定了新生代的收集器, 是为了配合后面的CMS收集器。(Oracle 公司的 Java官方虚拟机里, 内置了7种不同的垃圾收集器) -XX:+UseConcMarkSweepGC
-XX:CMSInitiatingOccupancyFraction=85 -- 为了避免吞吐量下降得厉害, 这里将CMS收集器的临界值设置到 85%, 减少了FullGC的次数.