我的Eclipse近几天运行时速度奇慢,具体表现为:

1、只要ECLIPSE启动后,硬盘灯就狂闪,不停的读盘;

2、发布TOMCAT经常在0%;

3、偶尔CPU占满;

网上讲优化的文章无数,但是总是有用的却很少,大部分是转载甚至是抄袭的。在借鉴各个文章的做法并不断尝试后,我的问题终于解决了。

1、启动参数的优化;

我的启动参数为:

-Xms976m -Xmx976m -XX:PermSize=128m -XX:MaxPermSize=128m -Xmn168m -XX:+DisableExplicitGC

其中XX:PermSize和XX:MaxPermSize是必须的,仅仅设置Xmx,经常出现ECLIPSE内存溢出的情况;

减少jvm内存回收引起的eclipse卡的问题 :
这个主要是jvm在client模式,进行内存回收时,会停下所有的其它工作,带回收完毕才去执行其它任务,在这期间eclipse就卡住了。所以适当的增加jvm申请的内存大小来减少其回收的次数甚至不回收,就会是卡的现象有明显改善。 
主要通过以下的几个jvm参数来设置堆内存的:

-Xmx512m 最大总堆内存,一般设置为物理内存的1/4
-Xms512m 初始总堆内存,一般将它设置的和最大堆内存一样大,这样就不需要根据当前堆使用情况而调整堆的大小了
-Xmn192m 年轻带堆内存,sun官方推荐为整个堆的3/8
堆内存的组成 总堆内存 = 年轻带堆内存 + 年老带堆内存 + 持久带堆内存
年轻带堆内存 对象刚创建出来时放在这里
年老带堆内存 对象在被真正会回收之前会先放在这里
持久带堆内存 class文件,元数据等放在这里
-XX:PermSize=128m 持久带堆的初始大小
-XX:MaxPermSize=128m 持久带堆的最大大小,eclipse默认为256m。如果要编译jdk这种,一定要把这个设的很大,因为它的类太多了。
比如,下图(这个的内存为4G):

2、启动插件优化:

windows - preference- general - startup and shutdown 里,只保留第1、3、4,其他全部取消,保留的为:

Usage DAta Gathering Plug-in。

Equinox Provisioning Platform Automatic Updata Support。

WTP Webservice UI Plug-in。

如图:

4、关闭验证

windows - preference-Validation 全部取消,只保留Manual 列;

在工程上右键-Validation ,同样全部取消,只保留Manual列,如果需要检查代码是否有错,可以在代码文件上右键,手动验证。

如图:

5、清理工程文件

删除工作空间目录下.metadata\.plugins\org.eclipse.epp.usagedata.recording目录里的所有文件,主要要保留这个目录,只删除目录下文件即可

在经过以上操作后,我的Eclipse无论是启动还是发布或者是编译工程,速度都提升了不少,特别是启动。而且运行起来相对很流畅,闪退、假死和吃内存等一系列问题得到基本解决。

以上仅供参考大家参考,欢迎反馈问题和建议,谢谢。

更多深度优化请参考:http://chaoxz2005.blog.163.com/blog/static/15036542013411105519685/

Eclipse解决运行、启动缓慢问题思路的更多相关文章

  1. 解决logstash启动缓慢问题

    在部署logstash时,头几次启动时长还可以,最后高达半小时以上启动启动不了,上网查资料说,系统的“熵”过低,导致jruby启动缓慢.需要安装haveged.但是我安装完后还是慢 https://h ...

  2. 解决weblogic启动缓慢 linux系统随机数问题

    这是SUN,JDK一个bug解决办法是在weblogic启动脚本里setDomainEnv.sh: 加入以下内容 JAVA_OPTIONS="${JAVA_OPTIONS} -Djava.s ...

  3. [原创]消灭eclipse中运行启动的错误:“找不到或无法加载主类”问题

    最近一直遇到这个问题且根据网上的文章做法基本无法通过,故将自己的解决步骤记录及分享给大家. 一:环境必须要配置好. 试试在dos界面输入:java.javac 分别这两个命令是否能执行,如果都能执行恭 ...

  4. 启动 Eclipse 弹出“Failed to load the JNI shared library jvm.dll”错误的解决方法!&&在eclipse.ini中为eclipse指定jdk启动

    参考:http://blog.csdn.net/zyz511919766/article/details/7442633 http://blog.sina.com.cn/s/blog_028f0c1c ...

  5. 在Eclipse中运行Web项目Jsp网页时提示端口被占用的解决办法:Several ports (8005, 8888, 8009) required by Tomcat v9.0 Server at localhost are already in use.

    问题: 在Eclipse中运行Web项目Jsp网页启动Tomcat时提示端口被占用: Several ports (8005, 8080, 8009) required by Tomcat v9.0 ...

  6. eclipse中运行出错:无法初始化主类的解决办法

    问题描述:eclipse中运行程序时,出现如下错误 解决办法: 出现此类:无法初始化主类有可能是因为eclipse中Java的版本与JDK的版本不匹配,我开始用的时候eclipse中用的是Java s ...

  7. 在Eclipse中运行Jboss时出现java.lang.OutOfMemoryError:PermGen space及其解决方法

    在Eclipse中运行Jboss时出现java.lang.OutOfMemoryError:PermGen space及其解决方法 在Eclipse中运行Jboss时,时间太长可能有时候会出现java ...

  8. 解决:在Eclipse中运行monkeyrunner脚本报错: IOError: (2, 'File not found - D:\\workspace\\monkeyrunner_test01 (\u62d2\u7edd\u8bbf\u95ee\u3002)')

    在eclipse中搭建运行monkeyrunner脚本的环境,请见lynnLi的博客monkeyrunner之eclipse中运行monkeyrunner脚本之环境搭建(四) 但在实践中,状况确实层出 ...

  9. MyEclipse中的项目导入到Eclipse中运行的错误解决

    之前用的myEclipse,后来把项目导入eclipse发现报错,将MyEclipse中的项目导入到Eclipse中运行,不注意一些细节,会造成无法运行的后果.下面就说说具体操作:导入后出现如下错误: ...

随机推荐

  1. Ionic2开发环境搭建

    关于网络环境:ionic开发环境不需要FQ.我这里没有设置FQ,亲测可行.但是angular2的开发环境搭建,则需要FQ网络,否则很多包会安装失败. 建议大家在搭建开发环境的时候,不要参考百度出来的各 ...

  2. emberjs 循环中设置model的不同属性值

    //var grades = ['1', '2', '3', '4', '7', '8', '9']; ']; grades.forEach(function (item) { App.Templat ...

  3. [C语言] 数据结构-算法效率的度量方法-事前分析估算方法

    事前分析估算方法:在计算机程序编制前,依据统计方法对算法进行估算,抛开与计算机硬件软件有关的因素,一个程序的运行时间,依赖于算法的,好坏和问题的输入规模,所谓问题输入规模是指输入量的多少 推导过程,比 ...

  4. 手把手教你写一个java的orm(四)

    开始准备生成sql 在上一篇里,我们已经取到了我们在生成sql语句中所需要的信息,这一篇里我们开始根据class来生成我们需要的sql.在这之前我们先确认几件事情 sql里的参数我们使用占位符的形式. ...

  5. hdu 1043 八数码问题

    Eight Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Subm ...

  6. AutoFac使用方法总结四:生命周期续

         控制反转(IoC/Inverse Of Control):   调用者不再创建被调用者的实例,由autofac框架实现(容器创建)所以称为控制反转.      依赖注入(DI/Depende ...

  7. BZOJ5317:[JSOI2018]战争(闵可夫斯基和)

    令 \(a\in A,b\in B\) 则移动向量 \(\omega\) 使得存在 \(b+\omega=a\) 那么 \(\omega\) 需要满足 \(\omega=a−b\) 黑科技:闵可夫斯基 ...

  8. DOM增删改操作

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...

  9. Android可伸缩布局-FlexboxLayout(支持RecyclerView集成)

    Android可伸缩布局-FlexboxLayout(支持RecyclerView集成) 1 . 前言 前几天看到Google官方的博客介绍了Google开源的一个强大的布局-FlexboxLayou ...

  10. 计算机二进制表示、cpu架构(x86_64)、cpu频率、核心、主板

    计算机二进制表示 色彩二进制表示: 红色 255,0,0绿色 0,255,0蓝色 0,0,255 文字二进制表示:A 65a 97 cpu架构 cpu架构有精简指令集和复杂指令集两种精简指令集cpu有 ...