eclipse插件开发初体验-eclipse启动耗时统计插件

来源:互联网 发布:js自动触发function 编辑:程序博客网 时间:2024/05/01 10:17

最近打算学习一下JVM调优,打算先从Eclipse运行速度调优开始,因此我们就得需要知道调优之后与之前的耗时变化,这时制作一个插件计算Eclipse启动耗时就有必要了,其实eclipse插件开发我也是第一次接触,讲的不好请谅解


首先new一个插件工程




填写工程名,其他选项按默认的就行






  1. Properties
    1.1 ID插件的标识符,Eclipse将通过此标识符来识别插件
    1.2 Version ,Name和Vendor插件的版本号和名字以及供应商
    1.3 Execution Enviroment 插件的执行环境这里是JRE8

2.Options
Generate an activator,这是一个java类用来控制插件生命周期的,这里不需要
第二个勾选项默认勾上。无需多问

3.Rich Client Application
这是一个富客户端应用这里暂时也不用管,因为我们不需要,所以选上no就好。


最后finish完成




新建一个ShowTime类,实现IStartup接口,这里需要import三个eclipse包,org.eclipse.jface、swt、ui,在eclipse/plugins/目录下可以找到org.eclipse相关的jar包,添加到build path中。ShowTime代码具体如下:

package com.developer.showtime;import org.eclipse.jface.dialogs.MessageDialog;import org.eclipse.swt.widgets.Display;import org.eclipse.swt.widgets.Shell;import org.eclipse.ui.IStartup;public class ShowTime implements IStartup{@Override    public void earlyStartup() {        Display.getDefault().syncExec(new Runnable(){            @Override            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);            }                    });    }}



创建plugin.xml:

<?xml version="1.0" encoding="UTF-8"?><?eclipse version="3.5"?><plugin>       <extension point= "org.eclipse.ui.startup">             <startup class= "com.developer.showtime.ShowTime" />       </extension></plugin>



修改MANIFEST.MF文件:

Manifest-Version: 1.0Bundle-ManifestVersion: 2Bundle-Name: Show-start-timeBundle-SymbolicName: com.developer.showtime.ShowTime;singleton:=trueBundle-Version: 1.0.0.qualifierBundle-RequiredExecutionEnvironment: JavaSE-1.8Require-Bundle: org.eclipse.ui,org.eclipse.jface,org.eclipse.swtBundle-Vendor: DEVELOPER

注意冒号和后面填的value之间的空格,没有空格是会报错的


现在就可以Run as -> Eclipse Application运行了,这时会启动一个新的eclipse并运行该插件,成功后就可以导出插件了。Export->Deployable plug-ins and fragments,将生成的com.developer.showtime.ShowTime_1.0.0.201709132010.jar复制到eclipse/plugins/目录下,重新启动eclipse即可。


上图显示启动耗时13秒,反复启动几次后,插件显示的平均时间大约14S左右



原创粉丝点击