eclipse中build workspace的相关优化

网上流传的各种的eclipse的调优的方法都大同小异,但是调优的基本上针对eclipse或者myclipse的本身,比如关掉validate和启动项,文件拼写,和自动构建等,调过之后,等个eclipse/myeclipse跑起来的速度和占用的资源是会相对少一点,但是针对个别项目的不多,这边我就记录整理下,方便以后自己查看和帮到一些有需要的人。

 

首先是针对软件本身的调优,myeclipse就省了,和eclipse大体相同,调优如下:

 

减少Eclipse启动后自动启动的插件
具体操作: 在Preferences -> General -> StartUp and Shutdown: 将除Plug-ins activated on startup以外的项目有节选的去掉(比如Mylyn等没用到,就去掉了)
效果: 启动Eclipse后,会有Initialing Java Tools的滚动条,会发现快了很多.

减少编译需要验证的项目,提升编译速度
具体操作: 在Preferences -> Validataion 将无关的Validator去掉, 比如: 我就将和我无关的JPA, JSP, WS 都去掉了.
效果: 编译项目时,Eclipse跑的Validator项目少了, 确实快了.

关掉自动编译
具体操作: Project -> Build Automatically
效果: 在代码修改保存后,不会启动自动编译.

在Clean的时候,要注意选项
具体操作: Project -> Clean
注意: 在最下面有: Build the entire workspace 和 Build Only the selected Projects
要根据自己情况勾选, 因为是默认选择编译整个工作区.

显示内存使用情况(可手动GC)
具体操作:Preference -> General -> Show heep status

保存自己的Perspective
具体操作:1. Window -> Save Perspective As
2. Preference -> Perspective -> Make Default 将自己刚刚创建的Perspective 或 自己常用的 设置成默认

关闭Server的自动发布
具体操作:Server -> Publishing -> Never publish automatically

 

 

还有一些额外的呢,如下

1- eclipse 默认是自动编译的,你可以把project 下的build automaticaly 勾去掉,译成手动编译,这样可以减少系统的负荷,还有就是除了正在编辑的项目,其它的都关掉。
2-在eclipse.ini式中添加了一个命令 -clean,给Eclipse清理一下 (windows+s键打开搜索,然后搜索eclipse.ini进行修改)
3- 在Eclipse启动时(也就是在eclipse.ini中)加入参数: -vmargs -Xmx512M  ,Eclipse开始内存损耗比较小,但是后来消耗也大,注意及时清理并开大Eclipse内存。
4-Window–>Preferences–>Install/Update–>Auto updates,取消自动更新
5-Preferences -> General -> StartUp and Shutdown: 将除Plug-ins activated on startup以外的项目有节选的去掉(比如Mylyn等没用到,就去掉了,或者全部去掉)

然后呢,就是针对每个具体的项目,进行调优。

 

我以为这个调优,再加上上面的对软件本身资源的调优之后,eclipse基本上不存在会说一直build,一直验证,一直卡住不动或者报出out of Java heap的错误,而且速度非常快,不会导致编码时间过长,而占用的资源一直增加的情况。举例说明:

 

在开发中,发现eclipse 的 Build Workspace 很慢很慢,只要是由于验证js, css, xml 等等静态的文件导致。当然他也会自动去验证Java或者property之类的文件,但这类文件基本build的很快,不会导致卡住。

我遇到的问题是,项目中有一个js文件很大,怎么都不能Build 过去,一直在Build,你又无法做其他的工作,改一个文件?删除一个文件?重新部署??都是不行的,只要你保存过后,必须等他自动build完毕,不然基本只能看看代码。

 

这边就有朋友疑问来,那我直接关掉自动build,把其他的相关的也关掉,其实这个是可以的,关闭所有之后,等项目完成或者每次发布之前,再手动去验证,去build的,这时候问题是,假使项目过大,你想部署之前,手动验证和build的这段时间或许会很长,10来mins的情况我也听人说过,每部署一次,都手动来一次,都等一次,这个似乎不太好,而且还有个问题就是,当你把自动build取消之后,你在编写.java等文件的时候,它是不会提示语法错误的或者你的xml配置文件,它仍然不会,只有当你手动去build的时候,它才会报错出来。

 

这时候需求就很明确了,我仍然eclipse去自动build,但是不希望它去build那些没用的或者根本不需要build的文件,如ext-all.js,如jquery.js,甚至是WebContent下的整个image文件夹,整个resource文件夹等等。而eclipse为我们提供了这类的功能。细心的朋友或者早就发现了。

 

第一步在当前项目上右键,

 

 

第二步,选中Javascript中的include path

 

第三步,切换到source选项卡,展开项目结构,双击Excluded,即添加不包含的文件,可以看到它是以WebContent为根目录的

 

第四步,在Exclusion patterns下,选择WebContent下,不想被自动build的文件夹,或者文件,如我这里是把ext的引入文件和example的资源文件加入了

第五步,finish,之后你再打开WebContent下的example中的文件,如upload.js,login.js编辑之后保存,eclipse右下角再也不会显示build workspace,当你编辑一个java文件之后,它就会显示了。

 

 

以上就是eclipse中的相关的优化,记录一下,方便查看,方便有需要的朋友。

标签