eclipse的插件开发-启动时间

时间:2024-04-20 19:04:15

今天晚上看《深入理解java虚拟机》时,作者在书中有一段,eclipse优化的章节,其中涉及到了eclipse启动时间检测的插件开发

于是翻了翻资料,也开发了一个自己的插件

如图是开发后启动的截图

eclipse的插件开发-启动时间

启动时间较长有13s多,接下来是我开发的过程供大家参考

第一步新建一个plug-in Project文件

eclipse的插件开发-启动时间

eclipse的插件开发-启动时间

第二步骤中的Generate an activator勾选

第三步写一个ShowTIme.java文件

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() {
// TODO Auto-generated method stub
  long eclipseStartTime = Long.parseLong(System.getProperty( "eclipse.startTime"));
  long costTime = System.currentTimeMillis() - eclipseStartTime;
  Shell shell = Display.getDefault().getActiveShell();
  String message = "Eclipse start in " + costTime + "ms";  
  MessageDialog. openInformation(shell, "Information" , message);
}

});
}

}

这是我自己的

eclipse的插件开发-启动时间

发现报错

在Bundle-SymbolicName: com.developer.showtime后添加一个;singleton:=true

配置下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>

现在就可以Run as -> Eclipse Application运行了,这时会启动一个新的eclipse并运行该插件,成功后就可以导出插件了

你想做一个这样的插件吗?赶快试一试呗