`
xuwenjin666
  • 浏览: 46154 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

【转】myeclipse性能优化设置

 
阅读更多

原文:http://blog.csdn.net/longne/archive/2008/03/18/2193630.aspx

 

Eclipse作为开发人员强力推崇的开发工具之一,其与JBuilder相比,很多同盟都认为使用Eclipse比使用JBuilder省内存,而且Eclipse属于免费开源项目,而像JBuilder和IDea等均属于商业非免费工具,当然还有其他一些说法。。。

个人选择Eclipse作为主要开发工具的原因主要有三点:

1、免费且开源

2、有很多开源、好用的插件,而且这些插件都是一些经验人士的杰作,能够大大方便和提高我们的开发(这里对他们表示感谢)

3、有像IBM这样本人崇拜的大型公司的支持

本文主要根据个人在使用Eclipse过程中的一些经历,总结和收集一下Eclipse开发工具性能的提升的方法,目前主要包括如下几种,如果大家有什么更好的提升Eclipse性能的方法或者好用的Eclipse插件、技巧等,欢迎大家回复讨论。

一、更改代码提示快捷键

该方法主要针对使用myeclipse插件的人员,现在的代码提示快捷键,默认为ctrl+space,而我们输入法切换也是,所以会有冲突。谁叫myeclipse是外国人做的呢。。根本不需要切换输入法.

windows–>perferences–>general–>Keys

更改 content assist 为 alt+/

同时由于alt+/已经被word completion占用,所以得同时修改word completion的快捷键值

二、更改jsp默认打开的方式
该方法主要针对使用myeclipse插件的人员,安装了myeclipse后,编辑jsp页面,会打开他的编辑页面,同时也有预览页面,速度很慢,不适合开发。所以更改之

windows–>perferences–>general–>editors->file associations

三、取消myeclipse的启动项
随着集成的插件的增多,eclipse会有很多的启动项,而其中很多我们已经放弃使用或者都用不着,或者只用一两个,取消前面不用的就可以

windows–>perferences–>general–>startup and shutdown

四、取消Eclipse拼写检查
1、拼写检查会给我们带来不少的麻烦,我们的方法命名都会是单词的缩写,他也会提示有错,所以最好去掉,没有多大的用处

windows–>perferences–>general–>Editors->Text Editors->spelling

六、取消自动validation
validation有一堆,什么xml、jsp、jsf、js等等,我们没有必要全部都去自动校验一下,只是需要的时候才会手工校验一下!

取消方法:
windows–>perferences–>Validation
除开Manual下面的复选框全部选中之外,其他全部不选
手工验证方法:
在要验证的文件上,单击鼠标右键–>validate

七、加大JVM的非堆内存,具体的做法和原因参考我前一篇文章《由MyEclipse内存不足谈谈JVM内存》

如果没有进行设置的话,在使用MyEclipse的经常出现如下图所示内存不足的提示。

提示中说的很明白:“MyEclipse has detected that less than 5% of the 64MB of Perm Gen (Non-heap memory) space remains.”意思是说当前只有小于5%的非堆内存是空闲的。所以我们只要将这个值设置大一些就可以了。

提示中给出了设置的参数:

-vmargs -Xms128M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M
这里有几个问题:
1. 各个参数的含义什么?
2. 为什么有的机器我将-Xmx和-XX:MaxPermSize都设置为512M之后Eclipse可以启动,而有些机器无法启动?
3. 为何将上面的参数写入到eclipse.ini文件Eclipse没有执行对应的设置?

下面我们一一进行回答

1. 各个参数的含义什么?

参数中-vmargs的意思是设置JVM参数,所以后面的其实都是JVM的参数了,我们首先了解一下JVM内存管理的机制,然后再解释每个参数代表的含义。

堆(Heap)和非堆(Non-heap)内存
按照官方的说法:“Java 虚拟机具有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从此处分配。堆是在 Java 虚拟机启动时创建的。”“在JVM中堆之外的内存称为非堆内存(Non-heap memory)”。可以看出JVM主要管理两种类型的内存:堆和非堆。简单来说堆就是Java代码可及的内存,是留给开发人员使用的;非堆就是JVM留给自己用的,所以方法区、JVM内部处理或优化所需的内存(如JIT编译后的代码缓存)、每个类结构(如运行时常数池、字段和方法数据)以及方法和构造方法的代码都在非堆内存中。
堆内存分配
JVM初始分配的内存由-Xms指定,默认是物理内存的1/64;JVM最大分配的内存由-Xmx指定,默认是物理内存的1/4。默认空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制;空余堆内存大于70%时,JVM会减少堆直到-Xms的最小限制。因此服务器一般设置-Xms、-Xmx相等以避免在每次GC 后调整堆的大小。
非堆内存分配
JVM使用-XX:PermSize设置非堆内存初始值,默认是物理内存的1/64;由XX:MaxPermSize设置最大非堆内存的大小,默认是物理内存的1/4。
JVM内存限制(最大值)
首先JVM内存限制于实际的最大物理内存(废话!呵呵),假设物理内存无限大的话,JVM内存的最大值跟操作系统有很大的关系。简单的说就32位处理器虽然可控内存空间有4GB,但是具体的操作系统会给一个限制,这个限制一般是2GB-3GB(一般来说Windows系统下为1.5G-2G,Linux系统下为2G-3G),而64bit以上的处理器就不会有限制了。
2. 为什么有的机器我将-Xmx和-XX:MaxPermSize都设置为512M之后Eclipse可以启动,而有些机器无法启动?

通过上面对JVM内存管理的介绍我们已经了解到JVM内存包含两种:堆内存和非堆内存,另外JVM最大内存首先取决于实际的物理内存和操作系统。所以说设置VM参数导致程序无法启动主要有以下几种原因:

1) 参数中-Xms的值大于-Xmx,或者-XX:PermSize的值大于-XX:MaxPermSize;

2) -Xmx的值和-XX:MaxPermSize的总和超过了JVM内存的最大限制,比如当前操作系统最大内存限制,或者实际的物理内存等等。说到实际物理内存这里需要说明一点的是,如果你的内存是1024MB,但实际系统中用到的并不可能是1024MB,因为有一部分被硬件占用了。

3. 为何将上面的参数写入到eclipse.ini文件Eclipse没有执行对应的设置?

那为什么同样的参数在快捷方式或者命令行中有效而在eclipse.ini文件中是无效的呢?这是因为我们没有遵守eclipse.ini文件的设置规则:

参数形如“项 值”这种形式,中间有空格的需要换行书写,如果值中有空格的需要用双引号包括起来。比如我们使用-vm C:\Java\jre1.6.0\bin\javaw.exe参数设置虚拟机,在eclipse.ini文件中要写成这样:

-vm
C:\Java\jre1.6.0\bin\javaw.exe
按照上面所说的,最后参数在eclipse.ini中可以写成这个样子:

-vmargs
-Xms128M
-Xmx512M
-XX:PermSize=64M
-XX:MaxPermSize=128M
实际运行的结果可以通过Eclipse中“Help”-“About Eclipse SDK”窗口里面的“Configuration Details”按钮进行查看。

另外需要说明的是,Eclipse压缩包中自带的eclipse.ini文件内容是这样的:

-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
-vmargs
-Xms40m
-Xmx256m
其中–launcher.XXMaxPermSize(注意最前面是两个连接线)跟-XX:MaxPermSize参数的含义基本是一样的,我觉得唯一的区别就是前者是eclipse.exe启动的时候设置的参数,而后者是eclipse所使用的JVM中的参数。其实二者设置一个就可以了,所以这里可以把–launcher.XXMaxPermSize和下一行使用#注释掉。

2. 去除不需要加载的模块
一个系统20%的功能往往能够满足80%的需求,MyEclipse也不例外,我们在大多数时候只需要20%的系统功能,所以可以将一些不使用的模块禁止加载启动。通过Windows - Preferences打开配置窗口,依次选择左侧的General - Startup and Shutdown,这个时候在右侧就显示出了Eclipse启动时加载的模块,可以根据自己的实际情况去除一些模块。

3. 取消MyEclipse在启动时自动验证项目配置文件
默认情况下MyEclipse在启动的时候会自动验证每个项目的配置文件,这是一个非常耗时的过程,可以在Preferences窗口依次选择MyEclipse - Validation,然后在右侧的Validator列表中只保留 Manual 项就可以了。如果需要验证的时候只需要选中文件,然后右键选择 MyEclipse - Run Validation就可以了。

通过上面的几个步骤可以有效优化MyEclipse的启动速度和运行效率,如果你还有新的方法可以回复

八、调整插件选项

进入Preferences把Plug-in Development>Target Platform>plug-in里跟自己无关或者暂且不用的plug-in去掉勾选,我这里共400多个中去掉了100多个。
MyEclipse5.0.1GA_E3.2 之前的:进入Preferences把跟编辑有关的所有的Edit Modes 设为Disable Design Mode

1.九、调整Customize Perspective
里自己没用到的选项自己去掉勾选。

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/printfabcd/archive/2010/03/27/5423663.aspx

分享到:
评论

相关推荐

    myeclipse性能优化.pdf

    myeclipse性能优化.pdf

    MyEclipse优化-性能优化

    MyEclipse优化后,MyEclipse的速度及方便性是不是提高了。 当然这只是对一种工具的熟悉而已,不存在什么技术含量,但俗话不是说 “磨刀不误砍柴工”,有了方便的工具,对于我们写代码时的心情还是有所提高的...

    myeclipse性能优化方法

    你的myeclipse是否经常发生未响应呢,这里有全面的优化方法呦

    myEclipse 性能优化

    MyEclipse性能优化 自己动手,丰衣足食.不问他人,您一样可以优化. 不是机器不牛X,只是软件没优化

    MyEclipse eclipse 开发工具性能优化

    MyEclipse eclipse 开发 性能优化 减少build的执行时间,提交开发效率 有操作的具体截图

    MyEclipse加速,性能优化,终极优化

    MyEclipse加速,性能优化,终极优化

    MyEclipse性能优化

    让你的Eclipse拖着myeclipse狂飚!

    提高MyEclipse6.5的性能

    为了防止myeclipse经常卡,使用文档中的方法,可以大大提高性能

    教大家如何进行MyEclipse优化

    教大家优化,有些文档看不懂就别乱评论,你看不懂不说明我的提供的代码不正确。

    MyEclipse优化方案

    MyEclipse优化方案,包括各种MyEclipse的参数优化,性能优化

    myeclipse的优化

    一、myeclipse优化方案一(专治myeclipse的jsp页面卡的问题): 解决Myeclipse 编辑jsp页面卡 编辑一个jsp页面时,如果每输入一下,CPU都100%一下,问题的解决2008年10月29日 星期三 13:14今天解决了一个让我特郁闷的...

    性能大提速_MyEclipse

    MyEclipse 8.5 优化, 可以使我们使用时不用担心速度慢的问题 - 性能大提速

    myeclipse 8.5插件

    针对于myeclipse8.5占用内存很大,我们可以对其进行性能优化,可以配置插件!!!!

    TOMCAT优化

    本文档主要介绍了Tomcat的性能调优的原理和方法。可作为公司技术人员为客户Tomcat系统调优的技术指南,也可以提供给客户的技术人员作为他们性能调优的指导手册。

    基于javaweb的小型超市信息管理(进销存)系统。开发工具为MyEclipse.zip

    包括编译器、构建工具(如Make、Gradle、Maven)等,用于将源代码转换为可执行文件或库,并进行资源打包、优化等处理。 调试与测试: 集成调试器允许开发者逐行执行代码,设置断点、查看变量值、跟踪调用堆栈等...

    MF00098-通用后台系统.zip

    开发工具 : MyEclipse 源码类型 : WebForm 注意:不带技术支持,有帮助文件,虚拟商品,发货不退,看好再拍。 整体的SSM后台管理框架功能已经初具雏形,前端界面风格采用了结构简单、 性能优良、页面美观大的Layui...

    【白雪红叶】JAVA学习技术栈梳理思维导图.xmind

    性能优化 分层优化 系统级别 中间件级别 JVM级别 代码级别 分段优化 前端 web应用 服务应用 资源池 数据库 大数据与nosql zookeeper hadoop hbase mongodb strom spark java语言 语言语法基础 ...

    javaee论坛源码-其他

    javaee是一个专以java进行开发的论坛网站源码。 此框架采用springMVC+mybatis+mysql,...此版本更正已知bug和性能优化,对数据表的重新设计。 正式版本现在数据在25w左右,对打开每个页面访问速度基本在一秒内完成。

    基于web的工资管理系统课程设计.doc

    2.1.2 技术上的可行性 依靠当今的软件开发方法和案例,通过学习了MyEclipse软件的学习,及对Oracle数 据库的学习和网络知识的学习,及现今计算机硬件的水平的提高,通过努力开发出来应 该是没有技术问题。...

    印染厂生产仓储信息系统

    在这种情况下,沿海某纺织印染集团公司的决策层经过分析和讨论,审时度势做出战略决策:与时俱进,调整和优化产品结构,提高产品附加值、推行精细化管理和集约化经营。 目前,根据集团的总体规划,将在印染分厂逐步...

Global site tag (gtag.js) - Google Analytics