Eclipse插件开发步骤和两个内存分析工具
来源:互联网 发布:英达 巴图 知乎 编辑:程序博客网 时间:2024/06/05 02:41
不是说插件代码的事情,只是简单的把插件的开发步骤图形化总结一下,现在也没有时间去做插件的东西。这里只是个备忘而已。以后有机会再说吧。
第一步:新建一个plugin工程
第一步:新建一个plugin工程
Next。
第二步:添加信息,工程名字,位置,Eclipse版本,这些简单设置Next.
第二步:添加信息,工程名字,位置,Eclipse版本,这些简单设置Next.
第三步:基本上默认就可以,可以填个名字什么的卖个萌
第四步: 可以Next选择个模板,也可以Finish直接开始
第五步:填写相关代码,这里贴一个测试代码,也是别的代码,只是为了说明。
第六步:写完代码之后,可以直接测试一下,右击工程,run as -----run eclipse application,运行成功之后,截图如下:
第七步:如果想打包在别的eclipse下也可以使用怎么办?打包,打成JAR包放在plugin目录下,OK收工。
关于visual VM的使用:在监测自己机子上tomcat的运行情况时,不能读取和分析堆文件,最后在tomcat运行时jvm里加上了如下参数:
然后再重新启动tomcat,在visual vm中添加JMX connection,因为上面设置的端口为8999,设置如下:
第五步:填写相关代码,这里贴一个测试代码,也是别的代码,只是为了说明。
package startuptimeofeclipse.actions;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.ui.IStartup;
import org.eclipse.jface.dialogs.MessageDialog;
public class ShowTime implements IStartup{
@Override
public void earlyStartup() {
// TODO Auto-generated method stub
Display.getDefault().syncExec(new Runnable(){
public void run(){
long eclipseStartTime = Long.parseLong(System.getProperty("eclipse.startTime"));
long costTime = System.currentTimeMillis() - eclipseStartTime;
Shell shell = Display.getDefault().getActiveShell();
String message = "Eclipse 启动耗时:"+costTime +"ms";
MessageDialog.openInformation(shell, "Information", message);
}
});
}
}
//
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin>
<extension
point="org.eclipse.ui.startup">
<startup class="startuptimeofeclipse.actions.ShowTime"/>
</extension>
</plugin>
//plugin.xml
第七步:如果想打包在别的eclipse下也可以使用怎么办?打包,打成JAR包放在plugin目录下,OK收工。
关于visual VM的使用:在监测自己机子上tomcat的运行情况时,不能读取和分析堆文件,最后在tomcat运行时jvm里加上了如下参数:
-Dcom.sun.management.jmxremote.port=8999
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false然后再重新启动tomcat,在visual vm中添加JMX connection,因为上面设置的端口为8999,设置如下:
成功以后,就可以看到机子的运行状态,以及各种内存分析图表了
点击HeapDump就可以生成堆的快照文件,然后拿出MAT分析一下:
点击HeapDump就可以生成堆的快照文件,然后拿出MAT分析一下:
当然这是一个正常的运行状态,如果是这样的一个图:
看看这里,一个Main方法把堆用完了
再看看这里,到底堆中是谁占用了这么多的空间?看看头条就知道是谁了---------------- Pilot,一共77676个对象。。。
本想贴出这一段程序源代码,但代码不知道被我弄哪去了,这里大家也可以自己造一个内存溢出的例子来,生成快照文件再来看一下。如果想在命令行生成快照文件可以直接用java的-XX:+HeapDumpOnOutOfMemoryError参数也可以,然后用MAT分析一下。
0 0
- Eclipse插件开发步骤和两个内存分析工具
- Eclipse 如何安装和使用 MAT 插件(内存映像分析工具 Eclipse Memory Analyzer)
- Ecplise内存分析工具插件
- eclipse安装内存分析工具
- Eclipse MAT 内存分析工具
- 开发工具:eclipse 插件集锦
- 开发工具eclipse: subclipse插件
- 开发工具和eclipse插件下载地址收集
- Eclipse和插件开发
- Java开发工具myeclipse和eclipse内存溢出解决方法之一
- eclipse内存分析工具MAT Memory Analyzer Tool 插件安装(图解)
- Eclipse安装插件的方法和步骤
- eclipse安装gradle插件步骤和使用
- eclipse内存分析工具MAT浅谈
- eclipse内存分析工具MAT浅谈
- eclipse内存分析工具MAT使用
- eclipse分析内存溢出的工具
- Eclipse内存分析工具的用法
- SpringMVC中使用Interceptor拦截器
- 设置滑动视图中图片居中显示
- 利用二进制日志恢复数据库
- 设计模式_代理模式
- 图的深度优先搜索与广度优先搜索
- Eclipse插件开发步骤和两个内存分析工具
- 陈力:传智播客古代 珍宝币 泡泡龙游戏开发第七讲:DIV+CSS入门
- 初识Python
- LeetCode 226Invert Binary Tree
- (图文)在MyEclipse(2015)中上传项目到github的步骤(很详细)
- Cocos2d-x使用UserDefault数据持久化实例
- linux中fork()函数详解(原创!!实例讲解)
- 观察者模式实现上下一起滑动
- 走楼梯