关于性能:如何加速Eclipse?

How can you speed up Eclipse?

怎样才能让Eclipse的体验更快?

例如:我禁用所有不需要的插件(mylyn、subclipse和hellip;)。

我没有使用Mercurial的插件,而是将TortoiseHg配置为外部工具。


影响日食速度的三个因素是:

  • 使用最新版本的Eclipse(2008年编写时为3.4 Ganimede)注意大卫·巴拉吗?IC的评论(2014年7月)与六年前的标准相矛盾:

The"same" workspace in Indigo (3.7.2) SR2 loads in 4 seconds, in Kepler SR2 (4.3.2) in 7 seconds and in Luna (4.4.0) in 10 seconds. All are Java EE bundles. Newer versions have more bundled plugins, but still the trend is obvious. (by"same" workspace I mean: same (additionally installed) plugins used, same projects checked out from version control).

  • 使用最新的JDK启动它(在编写时为1.7,这不会阻止您在Eclipse项目中使用任何其他需要的JDK编译:1.4.2、1.5、1.6旧版…)

    1
    -vm jdk1.6.0_10\jre\bin\client\jvm.dll
  • 配置eclipse.ini(有关完整的eclipse.ini,请参阅此问题)

    1
    2
    3
    4
    5
    -Xms128m
    -Xmx384m
    -XX:MaxPermSize=128m _# NOTE: this option is obsolete in Java 8, it will be ignored_
    -Xss2m
    [...]

Xmx参数是Eclipse将获得的内存量(简单来说)。使用-Xmx384m,它得到384 MB的RAM,使用-Xmx4G,它得到4 GB等。

注:

  • 引用jvm.dll具有以下优点:

    • 喷溅屏很快就会出现。
    • 进程列表中的eclipse.exe而不是java.exe。
    • 防火墙:Eclipse需要访问Internet而不是Java。
    • 窗口管理品牌问题,尤其是在Windows和Mac上。

    但是如果你试图把内存推得太高,它也会有一些缺点。

  • Eclipse采用的默认内存是maxpermsize和xmx的组合。这里总共高达512 MB,这对于1 GB内存的计算机来说已经足够了。


  • -Xverify:none添加到eclipse.ini文件中。

    它将大大缩短Eclipse的启动时间(在我的例子中,如果不是更多的话,可以减少50%)。这将告诉虚拟机不要验证它正在加载的所有.class文件。


    转到windows->preferences->validation,取消选中您不想要或不需要的任何validators

    对于Eclipse3.7,您可以使用Windows->Preferences->General->Startup and Shutdown。


    确保使用Sun JVM运行Eclipse。

    在Linux上,尤其是Ubuntu上,Eclipse默认安装为使用开源gcj,这大大降低了性能。使用update-alternatives --config java切换到sun jvm,可以大大提高Eclipse中的UI敏捷性。


    关闭当前未使用的任何打开的项目。

    在开发期间尝试关闭自动发布模式。


    谢谢你的提示。这些选择(上面提到)对我有很大帮助:

    窗户:

    增加我在Eclipse中的内存和Java版本:

    1
    2
    3
    4
    5
    6
    -Dosgi.requiredJavaVersion=1.6
    -Xms256m
    -Xmx512m
    -XX:PermSize=512m
    -XX:MaxPermSize=512M
    -Xverify:none

    LINU/Ubuntu:

    使用

    1
    update-alternatives --config java


    禁用标签装饰可以获得另一个性能提升(Windows -> Preferences; General -> Appearance -> Label Decorations)启动时禁用未使用的功能(Windows -> Preferences; General -> Startup and Shutdown号)。

    您还可以根据您的JVM选择不同的垃圾收集策略来获得额外的性能。

    如果您厌倦了重启周期,那么可以使用ZeroTurnaturn中的JavaRebel。这将缩短服务器/客户端重新启动的时间。


    虽然与Eclipse没有直接关系:

    如果您运行的是Windows 7(可能是Windows Vista),请确保禁用工作区文件夹的文件索引(如果您的资料位于默认位置-您的主文件夹中)。默认情况下,Windows会索引主文件夹中的所有内容,这通常只是对工作区的浪费。(右键单击资源管理器中的"工作区"文件夹,"属性"->"高级")。


    禁用病毒扫描程序,或者至少将任何病毒扫描程序配置为在读取访问时不扫描JAR文件。


    Eclipse缓慢地加载插件,以及最常见的插件,像Subclipse一样,如果不使用它们,就不要做任何事情。它们在运行时根本不会减慢Eclipse的速度,而且不会帮你使他们瘫痪的。事实上,Mylyn被展示给正确使用时减少Eclipse的内存占用。

    我使用大量插件运行Eclipse,但没有任何性能罚点球。

    • 尝试禁用可能没有的编译器设置需要(例如"参数从不读取"下的子选项)。
    • 您使用哪个版本的Eclipse?旧版本我们知道如果你一次又一次地升级它们会很慢。又一次,因为他们的插件文件夹膨胀了具有重复插件(具有不同版本)。这个在版本3.4中不是问题。
    • 使用工作集。它们比关闭项目更有效,尤其是需要在一直在做项目。

    不仅是内存需要随着-xmx的增加而增加。开关,这也是烫发的尺寸。我认为Eclipse3.4解决了这个问题。


    还有一件事可以真正加速Windows和Linux上的Eclipse——将JVM放入RAM磁盘。

    对于Windows,您可以使用qsoft的商业RAM磁盘驱动程序。

    对于Linux,使用Internet上许多文章中描述的任何方法。为RAM磁盘提供比JVM大10%的额外空间是很重要的。

    过来看。这真的很重要。


    随着最新的软件(最新的Eclipse和Java)和更多的RAM,您可能需要

    • 删除不需要的插件(并非所有插件都需要Eclipse的Mylyn和J2EE版本)
    • 不需要的验证器
    • 禁用拼写检查
    • 在Java编辑器中关闭未使用的选项卡(是的,它有助于减少Eclipse负担)
    • 关闭未使用的项目
    • 禁用不需要的标签声明(SVN/CVS)
    • 禁用自动生成

    参考:使Eclipse IDE更快


    我给它大量的内存(在启动它的命令中添加一个-xmx-whateverm开关),并尽量避免退出和重新启动它-我发现最糟糕的延迟是启动时,所以给它大量的RAM可以让我在它崩溃之前保持更长的时间。


    我还调优了vmargs和其他东西。但真正加速Windows上Eclipse的是反病毒软件的"正确"配置。您必须禁用压缩文件的按需扫描。JAR文件,许多与Java相关的文件都被填充了PKZIP算法来腾出空间。由于Eclipse使用了大量的Java文件,反病毒尝试逐个解包和扫描它们中的每一个。因此对于Windows平台:关闭压缩文件的按需扫描,否则Eclipse将无法使用。请记住,禁用这很不幸会使您的系统抵御攻击能力变弱,大多数恶意软件都使用打包程序。


    不可低估的是拥有一台快速机器。16-32 GB的RAM、SSD和像样的处理器…你要去哪里?


    我实现了一个插件来配置在运行时加载哪些功能,以提高性能并减少不同插件之间的冲突。

    您可能已经在Eclipse中安装了许多特性,如Android开发工具、C/C++开发工具、PHP、Svn、Git和CuleCaseEx插件。因此Eclipse很重,占用了大量的内存,其中一些并不经常使用。

    因此,您可以使用我的工具创建不同的运行时策略,例如具有Android、Git和基础Eclipse的策略,另一个包含C/C++、SvN和基础Eclipse。下次Eclipse将只加载指定的特性,如果您使用的策略只有Android和Git。

    欢迎您尝试并给我反馈。:)

    该工具的名称是Equinox高级配置器。


    这个线程中的最佳实践是在Eclipse的自由优化器中实现的,从零周转开始。

    它对什么有帮助?

    • 内存分配不足
    • 类验证开销
    • 过多的索引和历史记录
    • 过时或缓慢的JDK
    • 日食已过时
    • 漫长的构建和重新部署时间

    有关更多详细信息,请参阅Rebellabs的这篇文章。


    还有一个技巧是禁用自动生成。


    在限制打开的选项卡的数量时,我的性能有了很大的提高(在过去,我经常打开30多个选项卡)。您可以让Eclipse自动为您处理这个问题:

    窗口->首选项->编辑器->自动关闭编辑器

    8个打开的标签是">>"符号出现之前的数量,所以我倾向于将其保留在8。

    当打开更多选项卡时,最近访问次数最少的选项卡将关闭。

    ->当所有编辑器都变脏或固定时

    如果它有未保存的修改,您可以提示保存并重新使用(选项卡将关闭,新的选项卡将在其位置打开)。或者,您可以打开一个新的编辑器端,从而增加打开选项卡的数量(不太引人注目的选择)。

    如果你想确保某些标签永远不会自动关闭,你可以锁定它们。这是通过单击pin图标(工具栏中最右边的图标,其中"pin editor"作为tooltiptext)实现的。


    努力配置构建路径。如果代码完成需要遍历整个项目文件夹,那么它将使用大量内存。

    • 右键单击项目并选择"首选项"。
    • 选择生成路径设置并删除项目文件夹。
    • 然后只添加拥有源代码和库代码的文件夹。

    我已经禁用了Windows>Preferences>General中所有未使用的选项,它对性能有着巨大的积极影响,Eclipse在切换选项卡时仍然很慢,我不想增加内存,但滚动时速度要快得多。小费的THX。


    也可以尝试一下,这样可以提高性能:

    cleaning up indexes - {workspace
    path}.metadata.plugins\org.eclipse.jdt.core cleaning up history -
    {workspace
    path}.metadata.plugins\org.eclipse.core.resources.history

    清除上述文件夹不会影响项目文件。


    1
                           **Tips for making Eclipse IDE Faster**

    Eclipse在处理小项目时运行得更快。但是当你不得不处理大型项目时,你会对它的速度感到恼火。即使有一只巨大的公羊,你也不会对它满意。速度。以下步骤将帮助Eclipse提高速度

  • 通过转到Windows–>Preference–>General–>Startup and Shutdown,删除启动时某些插件的不必要激活。同时确保你在任何视图中都不使用这些插件。

  • 禁用对您不太有用的标签装饰,也将帮助您获得一些性能。转到Windows–>首选项–>常规–>外观–>标签–>装饰

  • 关闭不需要的项目并使用工作集选项从一组顺利地向另一个项目投射。

  • 4.配置eclipse.ini,可在Eclipse安装位置使用。

    配置eclipse.ini应该基于您的RAMXMS256MXMX512M-xx:排列尺寸=512m-XX:最大允许尺寸=512m

    查看http://wiki.eclipse.org/eclipse.ini了解更多选项在配置eclipse.ini中

  • 不要在编辑器中打开很多选项卡。最好有20个标签。定期关闭未使用的选项卡。为了打开资源,我们可以使用CTRL+Shift +R和CTRL+Shift +T(Java资源),而不是打开很多选项卡。在限制打开的选项卡的数量时,我体验到了相当大的性能改进(过去我经常打开30多个选项卡)。您可以让Eclipse自动为您处理这个问题:窗口->首选项->编辑器->自动关闭编辑器8个打开的标签是">>"符号出现之前的数量,因此我将14设置为默认值。当打开更多选项卡时,最近访问次数最少的选项卡将关闭。当所有编辑器都是脏的或固定的。如果它有未保存的修改,您可以提示保存并重新使用(选项卡将关闭,新的选项卡将在其位置打开)。或者,您可以打开一个新的编辑器端,从而增加打开选项卡的数量(不太引人注目的选择)。如果你想确保某些标签永远不会自动关闭,你可以锁定它们。这是通过单击pin图标(工具栏中最右边的图标,其中"pin editor"作为tooltiptext)实现的。

  • 转到Windows->Preferences->Validation并取消选中任何验证器你不想要也不需要。

  • 转到Windows->Preferences->General->Appearance->and uncheck any animation you don't want or needed.

  • 转到Windows->Preferences->Maven并检查"不自动更新依赖项"。


  • 在特殊情况下,性能不佳可能是由于H2或NWIRE数据库损坏造成的。有关更多信息,请阅读加快EclipsePDT和NWire的五个提示。

    在我工作的地方,我们依赖一个虚拟机来运行debian。我在虚拟机上安装了另一个Eclipse版本来测试目的,但如果运行其他Eclipse版本,这有时会造成冲突。两个Eclipse版本共享一个共享文件夹。我不小心让DebianEclipse安装在后台运行了一次,这给了我损坏的数据库文件。


    在Windows 8上。打开控制面板。找到Windows Defender。转到设置排除Spring/Eclipse和工作区所在的所有文件夹


    如果您使用Maven和Ivy,请查看它们的控制台,以防它们在构建过程中占用处理空间。我用的是常春藤,除此之外,我还有一些相同版本的JAR文件(内部文件)在变化,所以它必须一直锻炼来获取它们。

    如果您已经在网络驱动器上定义了项目,那么在构建/读/写类型的过程中也会遇到延迟。

    • 禁用/卸载不需要的插件。

    • 接近你不需要的困惑

    • 关闭未使用的数据库连接


    好吧,如果您正在使用Eclipse开发GWT应用程序,那么这就是方法:

    Eclipse内存不足错误

    还要记住将相同的VM参数添加到托管模式配置中。


    使用标准插件加速Eclipse的唯一真正方法是给它更多的内存,在某些情况下还可以访问更快的存储空间/经过碎片整理的硬盘。

    除此之外,从性能角度来说,没有什么可以做到的:大多数标准插件没有持续的运行时成本,甚至mylyn也相对较快。

    升级到您机器上支持的最新的JVM也可能会有所帮助。

    有些人为了获得更好的性能而降级到旧的Eclipse版本。使用EclipseClassic而不是官方版本也可能是有意义的。


    试试这些。有两种方法。

    第一程序

    请参阅本文。

    http://www.javaodegeeks.com/2014/06/the-real-way-to-make-eclipse-run-faster-on-ubuntu.html

    第二道工序。

    在终端中执行命令。

    1
    ramdisk

    为Ubuntu获得更好的性能和快速的响应。

    ramdisk是系统内存的一部分。Ubuntu默认使用一半的物理内存(RAM)作为ramdisk,并将其安装到

    /dev/shm

    它可以像普通磁盘空间一样使用(创建文件和文件夹,并以更好的性能操作它们,而不是将它们存储在硬盘上)。如果ramdisk使用超过一半的RAM,数据将被移动到交换空间。如果ramdisk使用更少,其余的仍然可以做RAM正在做的事情。

    设置ramdisk的上限

    如上所述,ramdisk默认可以使用半个RAM。如果要更改上限,请执行以下步骤:

  • 由您最喜欢的编辑器编辑/etc/fstab:

    gksudo gedit/etc/fstab

  • 找到这一行并进行更改,使其看起来像这样(如果不存在,则添加这一行,并将512M更改为您喜欢的样子。):

    tmpfs/dev/shm tmpfs默认值,大小=512m 0

  • 重新启动或重新装载

    /DEV/SHM

  • 将/tmp安装到ramdisk上

    为了便于使用,可以将目录装入

    1
    /dev/shm

    通过以下命令:

    mkdir/dev/shm/tmp(mkdir/dev/shm/tmp)

    chmod 1777/dev/shm/tmp公司

    mount—绑定/dev/shm/tmp/tmp


    如果Eclipse工作缓慢,我将遵循以下几个步骤:

  • Eclipse中安装的任何未使用的插件都应该卸载它们。--很少有插件会对Eclipse产生很大影响。
  • 打开当前工作项目并关闭其余项目。如果它们之间有任何依赖关系,请在运行时打开。如果所有项目都是maven项目,那么在pom文件中使用miner local change,您也可以使它们成为单个项目。如果您在独立的项目上工作,那么总是在工作区中的任何一个项目上工作。不要在单个工作区中保留多个项目。

  • 更改类型筛选器。它便于指定要始终引用的特定包。

  • 根据我的经验,不要更改内存JVM参数。它会导致许多未知问题,除非您对JVM参数有足够的了解。

  • 总是取消检查自动生成。特别是Maven项目的自动构建是无用的。

  • 关闭所有打开的文件,只打开当前工作文件。

  • 使用进入工作集。而不是整个工作台。

  • 应用程序的大多数组件也可以独立实现和测试。了解如何在不需要服务器部署的情况下独立运行,这使您的工作简单快速。--最近,我为我的项目在Hibernate实体上工作,两天,我在服务器上工作。也就是说,我在实体中进行了更改,然后再次在服务器上构建和部署,这会让我的所有时间都浪费掉它。所以,我创建了一个简单的JPA独立应用程序,并且非常快地完成了我的工作。


  • 关闭大纲视图以加快编辑器之间的切换。每次切换到不同的选项卡或打开文件时,大纲视图都必须更新,在我的计算机上,每次大约需要1秒钟。只需1秒钟,但如果你像我一样经常更改标签,这会让你省去头痛。


    除了为内存使用配置eclipse.ini之外。我已通过"启动和关闭选项"进行配置。我的日食现在很快。

    enter image description here


    本文如何快速使Eclipse更快是非常有用的。我尝试了一些技巧,这是真的,它使我的日食运行得更快。


    通过增加堆空间和更改垃圾收集器设置来加速Eclipse,我尝试了许多排列。

    但是对于我的本地开发,在我看来,我已经看到禁用JVM垃圾收集器对我来说是最好的。

    Mylyn自动完成功能可以毫无问题地工作,并且(没有响应)部分已经大大缩小。

    下面是eclipse.ini文件的快照。

    1
    2
    3
    4
    5
    6
    7
    8
    -vm
    --C:\JAVA\jre\bin\server\jvm.dll
    C:\JAVA8x64\jre\bin\server\jvm.dll
    -vmargs
    -Xnoclassgc
    -Dosgi.requiredJavaVersion=1.6
    -Xms256m
    -Xmx1024m

    我尝试过使用JDK6和JDK8,在这两种情况下,都注意到了显著的加速。


    问题可能是Java缓存或Java临时文件。

    打开Windows控制面板,找到Java面板单击常规选项卡上的设置,删除临时文件,并设置用于存储临时文件的磁盘空间量文件外径不超过10000MB。重新启动Eclipse。恢复所有验证器,您将看到您的IDE Eclipse的速度是正常的。


    还有一个解决方案删除这两个文件夹中的所有文件

    .metadata.pluginsorg.eclipse.core.resources.history.metadata.pluginsorg.eclipse.jdt.core版

    这对第一个母亲有帮助。但它仍然很慢


    我也有类似的减速,只有当您使用Eclipse的C/C++变体时,这个修复才适用。对于C/C++,您可能希望禁用以CPU HOG闻名的索引器。它相当于vs intellisense。要禁用CDT索引器,请转到Window->Preferences,在C/C++选项卡下选择"索引器",然后取消选中"启用索引器"。


    我们使用git作为cvs和gradle作为构建工具。

    症状

    在我的例子中,当浏览一个包含大量文件的目录时,一个包含超过20000个文件的特定项目使用分层视图冻结。

    固定

  • 创建新的Eclipse工作区
  • 将项目新克隆到Eclipse工作区中
  • 将项目导入Eclipse(在我们的示例中使用Gradle导入)

  • 如果您没有因为工作之类的原因而绑定到Eclipse,那么您需要的一些插件功能只能通过Eclipse等方式提供;那么一种可能的策略是完全消除Eclipse。这将极大地加快速度。

    您可以切换到执行您所需的任何其他IDE或开发环境。一个例子是netbeans。一些建议的加速也适用于NetBeans或任何其他IDE。

    直接应用于Linux的一个例子是尽可能多地移动到tmpfs挂载。对于NETBeaS中的Java开发,我已经将Java文档和源移动到EDCOX1×1的安装,这带来了巨大的性能提升。

    同样,在C++开发期间,如果可能的话,我将确保整个源树都在我的EDCOX1 1Ω安装中。虽然我没有广泛地对构建性能进行基准测试,但是对一个合理大小的代码库(几百个源文件+头文件)进行的一些测试导致编译时间减少了50%。

    请记住,使用此方法时,您的数据在断电期间不会保持不变。为了解决这个问题,我们可以创建一个脚本,让rsynctmpfs挂载到某个备份目录中,并将该脚本添加为每分钟运行一次的cronjob。


    将RAM增加到8 GB以上并禁用自动生成项目。这对我有用。