如何让eclipse启动更快

如题所述

可以参考如下几个提升eclipse启动速度的技巧:
技巧一:运行最新版本的JDK和Eclipse
通常,新版本的JDK和Eclipse都会有性能上的优化。请确保你使用的是64位Eclipse并且使用了Oracle的JDK。对于网络开发,需要使用Eclipse for Java EE而不是Eclipse for Java。

技巧二:调整Eclipse的Preferences
General > Startup and Shutdown : 移除所有在启动时加载的插件。
General > Editors > Text Editors > Spelling : 关闭拼写检查。
General > Validation > 勾选“Suspend all validator”。
Window > Customize Perspective > 移除所有用不到或不想用的内容(尽量使用快捷键),菜单栏也是如此(你用过几次菜单栏的打印按钮?)。
Install/Update > Automatic Updates > 取消勾选“Automatically find new updates and notify me”。
General > Appearance > 取消勾选“Enable Animations”。
使用默认的主题。其他主题可能会降低运行速度。
我自己还关闭了自动提示,这样在输入代码时不会拖累我。替代方案是使用Ctrl+Space在需要的使用手动提示。可以通过下面的配置来完成:(译者注:Ctrl+Space?中国人不会答应的)。
Java > Editor > Content Assist > 禁用“Enable Auto Activation”。在Advanced中移除所有不需要的内容(在Eclipse 4.2.2中没找到)。

技巧三:将JDK放在内存盘(RAM Disk)上
内存盘是将计算机内存的作为虚拟磁盘或硬盘使用。用来加速位于其中的软件的IO性能。内存中创建的RAM盘就像是计算机上的一块硬盘。由于这些内存当作硬盘使用,所以其他程序就不能使用这些内存空间。我们只是将JDK放到那里,300MB就足够了。
警告:不要将任何内容永久性的放到内存盘中,每次重启时,里面的内容都会消失并重新创建。
对于Linux用户:
这个链接中有详细的描述。
对于Mac用户:
使用diskutil工具创建内存盘
1. 创建一个新的脚本,例如:~/tools/batch/ramdisk.sh
将其中的x、y、z替换为你的JDK版本:
#!/bin/bash
diskutil erasevolume HFS+ 'JDK RAMDISK' `hdiutil attach -nomount ram://614400`
cp -r /Library/Java/JavaVirtualMachines/jdk1.x.y_z.jdk /Volumes/JDKRAMDISK
(注意:diskutil期望的参数是512字节扇区的整数倍:对于300MB,应该是300 * 1024 ^ 2 / 512 = 614400)
2. 保存脚本,将其改为可执行模式:
chmod 755 ~/tools/batch/ramdisk.sh
运行ramdisk.sh将创建内存盘:
$ ramdisk.sh
Started erase on disk4
Unmounting disk
Erasing
Initialized /dev/rdisk4 as a 300 MB case-insensitive HFS Plus volume
Mounting disk
Finished erase on disk4 JDKRAMDISK
现在用Finder应该能发现一个名为JDKRAMDISK的新设备,其中含有的就是JDK。点击“弹出”按钮可以移除RAM Disk并释放相应的内存。
如果想使用这个技巧,那么每次启动Eclipse都需要有这个内存盘,不然会看到“A Java Runtime … must be available in order to run Eclipse”错误。可以配置系统,用Automator或一个unchtl守护程序确保每次启动时会自动执行ramdisk.sh脚本。
对于Windows用户:
1. 下载并安装名为imdisk的工具
2. 创建一个新的批处理文件,如:C:/tools/batch/ramdisk.bat
将其中的x、y、z替换为你的JDK版本号:
@echo Placing JDK on Virtual Disk N:/
@echo off
sc config imdisk start= auto
net start imdisk
imdisk -a -t vm -s 300m -m n:
format n: /q /Y
call xcopy C:<path_jdk>jdk1.x.y_z N:jdk1.x.y_z /S /E /Y /Q
label n: JDK RAMDISK
运行ramdisk.bat后,将看到创建了一个名为“JDK RAMDISK”的新磁盘N,其中含有的就是JDK。
3. 确保文件以管理员模式运行。右击文件,选择“属性——兼容性——勾选“以管理员身份运行此程序”。
如果想使用这个技巧,那么每次启动Eclipse都需要有这个内存盘,不然会看到“A Java Runtime … must be available in order to run Eclipse”错误。可以配置系统,将ramdisk.bat脚本放到启动文件夹中。
为了让技巧3能够工作,需要在eclipse.ini文件中添加-vm设置(详见下一节)。

技巧四:调整你的eclipse.ini
在Eclipse的优化中,这是最令人困惑的地方。网上有海量的文章介绍不同的配置方案。我只是介绍我自己的配置方案。
找到你的eclipse.ini文件:
Windows/Linux:位于$ECLIPSE_HOME(译者注:$ECLIPSE_HOME是Eclipse的路径,这里假设Linux下也是自行安装,而不是通过源安装)
MacOS:位于$ECLIPSE_HOME/Eclipse.app/Contents/MacOS
明白接下来的工作的含义……
eclipse.ini中有两种类型的属性:与Eclipse应用相关的属性;与JVM相关的属性。这些选项具体取决于JDK和Eclipse的版本。下面的是我在网上找到的最新的列表。
要理解这些属性,首先要了解Oracle JVM的内存布局。一般来说,JVM内存分成几个内存池,对象根据不同存在时间位于不同的内存池中。
Eden空间(堆)是用于许多刚创建的对象。垃圾收集器每趟一般都是在这里处理”新代的“对象,并移除所有不再使用的对象。
Survivor空间(堆)含有那些在Eden空间中GC两三趟都没有销毁的对象。这些对象依然属于新生代,但将其移动到更安全的地方,被收集的风险大大降低。垃圾收集器在这里运行的频率要低很多(GC根据以往的经验来判断这里的对象都是经常使用的)。
Tenured空间(堆)含有在Survior空间存活相当一段时间的对象。
永生代(非堆)含有JVM的元数据,如类属性、方法、枚举等。由于这些数据可以在多个JVM间共享。所以永生代分只读和读写两个区域。
代码缓存(非堆)提供了用于编译并存储代码的内存空间。
如果你对此感兴趣,Oracle含有一篇很不错的关于配置垃圾收集的文章,其中详细介绍了所有这些空间的用途。
在eclipse.ini中,可以控制每个内存池的大小。下面的配置是针对我的16G内存设定的,但也可用于8G的内存。
使用位于RAM Disk中的JDK(使用在步骤三中的版本号):
-vm /Volumes/JDKRAMDISK/jdk1.x.y_z.jdk/Contents/Home/
-vm N:/jdk1.x.y_z/bin
禁用字节码验证(有风险)
这是跳过了class文件的验证(class文件的验证的信息参见这里),意味着JVM不会检测使用的class文件。如果使用的class文件被修改过,会有安全风险。自己承担风险(我仅仅是玩的时候用,不会在工作中启用这个选项)。
打开编译器性能优化
-XX:+AggressiveOpts
增加永生代空间(分配新对象的地方)(译者注:在JDK 8中,取消了永生代)
-XX:PermSize=512m
-XX:MaxPermSize=512m
增加最小最大堆的空间(含有新生代和年老代)
-Xms2048m
-Xmx2048m
为新生代增加堆的大小
-Xmn512m
为每个线程设置栈大小
-Xss2m
调整垃圾收集
-XX:+UseParallelOldGC
最后,这里列出其他可能在网上看到的选项。就我个人而言,这些选项都没有加速效果,所以仅仅是用来参考。读者可以在网上找到相应的文档,来了解并使用对应的选项:
-XX:MaxGCPauseMillis=10
-XX:+UseG1GC
-XX:CompileThreshold=5
-XX:MaxGCPauseMillis=10
-XX:MaxHeapFreeRatio=70
-XX:+CMSIncrementalPacing
-XX:+UseFastAccessorMethods
-server
最后,移除所有重复的选项,包括launcher.XXMaxPermSize,因为启用了XX:MaxPermSize选项后,这个选项就没用了。

技巧五:关闭杀毒软件
如果有杀毒软件,要确保这些软件不会检查代码文件夹。将JDK、Eclipse、你的.m2/jar代码库和代码文件夹添加到杀毒软件的白名单。

技巧六:不要在Eclipse中运行SVN和GIT
这是个人偏好。有些人喜欢将Eclipse与团队协同工具结合起来。就我个人而言,这样速度很慢,我宁愿Eclipse专注于开发工作,而不是同时做许多事。我还非常喜欢SVN/GIT命令行。不管怎么说,我把这些工具从Eclipse中移除,发现响应速度更快了。

技巧七:使用键盘
Eclipse的一个有点是其中含有大量快捷键。读者可以自行设置相关快捷键。一般我会重新设置调试键,这样就和Visual Studio & Chrome Dev Env的行为相同了。花点时间去学习快捷键。用的快捷键越多,使用Eclipse的体验就越快。
这里不会深入介绍快捷键,读者可以很容易的在网上找到相关资料。下面列出一些必备的快捷键:
Ctrl+Shift+R : jump to resource
Ctrl+Shift+T : jump to class
Ctrl+. : jump to next error
Ctrl+Shift+G : search for references
Ctrl+Shift+P : select matching bracket
Alt+Arrows : go forward / backwards
Ctrl+Space : autocomplete
Ctrl+Shift+F : format source
Ctrl+Shift+O : organize imports
Ctrl+D : delete line
 
温馨提示:内容为网友见解,仅供参考
第1个回答  2018-08-02
加快启动速度 方法
1.在eclipse启动的时候,它总是会搜索让其运行的jre,往往就是这个搜索过程让eclipse启动变慢了。(没设置时,等2-3s出现进度条,设置后直接出现进度条)
只要在eclipse.ini中加入-vm的参数就可以了
2.取消所有启动时要激活的插件(在用时激活也一样)和其它的相关的在启动时执行的操作。
3.关闭自动更新
减少jvm内存回收引起的eclipse卡的问题
这个主要是jvm在client模式,进行内存回收时,会停下所有的其它工作,带回收完毕才去执行其它任务,在这期间eclipse就卡住了。所以适当的增加jvm申请的内存大小来减少其回收的次数甚至不回收,就会是卡的现象有明显改善。本回答被网友采纳
第2个回答  2016-04-25
快不起来的,使用 eclipse 就注定不会频繁地重启它。在 eclipse 全局参数页中的 General > Startup and Shutdown 中把所有默认自动激活的插件全部不要打勾,否则刚启动时 workspace 刚打开这些插件自动激活就会去做很多初始化操作,比如 android 插件会检查 android 项目是否有错误,adt 插件与 android sdk 版本是否匹配是否需要更新 adt 插件,而多数时间我们当前打开 eclipse 可能并不是想做 android 开发这件事。因此这个操作对于我这次启动 eclipse 来说是在浪费时间。

eclipse启动非常慢应该怎么处理?
在eclipse启动的时候,它总是会搜索让其运行的jre,往往就是这个搜索过程让eclipse启动变慢了。2.取消所有启动时要激活的插件(在用时激活也一样)和其它的相关的在启动时执行的操作。3.关闭自动更新 。进行内存回收时,会停下所有的其它工作,带回收完毕才去执行其它任务,在这期间eclipse就卡住了。所...

为什么运行Eclipse很慢 快速开启Eclipse配置操作步骤
快速开启Eclipse配置操作步骤:首先,应当将下列的文件添加到 eclipse.ini配置文件里:-Xloggc:gc.log 这是显示Eclipse在启动的时候所做的事情。接下来,就可以开始进行一些优化。这里举个例子,本机内存环境是3.16G。第一次优化 设置-Xms (初始化堆大小)和-Xmx(JVM最大堆大小)为512M,以避免无用...

如何优化eclipse的web工程启动速度
方法如下:1、加大JVM的非堆内存:找到eclipse.ini 文件 把下面的那个 -XX:MaxPermSize 调大,比如 -XX:MaxPermSize=512M,再把 -XX:PermSize 调成跟 -XX:MaxPermSize一样大 注意:XX:MaxPermSize 和 Xmx 的大小之和不能超过你的电脑内存大小 2、去除不需要加载的模块:windows–>perferences...

如何让eclipse启动更快
方法:首先找到eclipse的路径,然后打开。找到如图所示的信息,然后用记事本打开。用记事本打开之后,会看到默认的是256m 将它改大一点,将256m改成800m,然后保存.(这个与自己的电脑配置有关,如果内存够大就把这个值改大一点,如果电脑是4G内存的话,改为512左右就差不多了)重启eclipse,会发觉现在...

eclipse编程怎么提高速度
根据需要去掉eclipse startup设置中的服务可以大大提升eclipse启动速度 Marketplace Client:在需要安装插件的时候,会自动启动 Equinox Provisioning Platform Automatic Update Support:更新eclipse的,没发现这个有啥用 mylyn:用于任务管理,如果你没用到这个,就可以去掉 WindowBuilder Discovery UI:对用Java做...

Eclipse启动速度 .metadata 这个文件有关?
首先,你确定不是MyEclipse?Eclipse启动很快的哦 设置方法 1. 加大JVM的非堆内存,具体的做法和原因参考《由MyEclipse内存不足谈谈JVM内存》2. 去除不需要加载的模块 一个系统20%的功能往往能够满足80%的需求,MyEclipse也不例外,我们在大多数时候只需要20%的系统功能,所以可以将一些不使用的模块禁止...

优化myEclipse 启动速度,为什么小弟我的还是那么慢
(1)关闭不常用的工程 打开的项目太多,会严重影响Eclipse的启动,将其关闭或者直接从工程视图中删除(不是物理删除)即可。(2)取消启动时自动加载的插件 选择Preferrnces–》General–》Startup and Shutdown,将Plug-ins activited on startup的插件全部取消,保存即可。(3)maven的设置 选择Preferr...

eclipse软件运行很卡该怎么优化
4为工程项目建立工作集合,working sets。然后视图的显示级别修改为working sets。eclipse使用过程中,最常用的习惯。working set还便于搜索。5去除不必要的启动项。在Preferences->General->startup and shutdown 这个界面中,可以去掉一些不必要的启动项。修改eclipse启动参数。在eclipse目录下,修改eclipse....

如何加快Eclipse的启动速度
配置eclipse的ini文件,调整到最优、具体的请自行百度 另外比较方便的是:换一个好点的电脑,固态硬盘8G 以上的内存 i5以上的cpu

为什么我的eclipse启动很慢
取消启动时默认激活的插件(如果需要使用再打开),路径:Window--Preferrences。搜索框中输入start,选择start-up and shutdown,勾掉不需要的激活插件。

相似回答