【Eclipse】一个简单的 RCP 应用 —— 显示Eclipse 的启动时间。
1 创建一个插件项目
1.1 File - New - Plug-in Project

注:
1 如果 New 下没有 Plug-in Project , 到 Other 里面去找。
2 如上截图的下方,有个 Eclipse version , 笔者试了一下,即使和当前 Eclipse 的版本不匹配,也不影响使用。
1.2 点击 Next 后,出现如下图所示的界面
这个界面基本不用做修改,使用默认值即可。
注意:如果截图下方的 Would you like to create a 3.x rich client application ? 没有选择 Yes , 请将其选为 Yes

1.3 再点击 Next 后,会出现如下图所示的4个模板,选择第一个 Hello RCP ,点击 Finish

随之,出现如下图所示的页面。
1.4 下方会有一排标签页,点击 Extensions

1.5 新增一个启动(startup)扩展
在 Extensions 标签页里,点击 Add 按钮,在 Extension Point filter 栏里输入 start 对数据进行过滤,双击选中 org.eclipse.ui.startup ,然后保存。

再看 Extensions 标签页,多了一个扩展。
再看右边,需要选择一个 Java 类。

1.6 创建启动扩展的实现类
下面,就创建一个 Java 文件,名字就叫 ShowTime.java 。
不多说,直接上代码:
package showstartuptime; import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.ui.IStartup; /**
* 简易的Eclipse插件程序
* 显示 Eclipse 的启动时间
*
* @author by Young.ZHU
* on 2014年4月5日
*
* Package&FileName: showstartuptime.ShowTime
*/
public class ShowTime implements IStartup { @Override
public void earlyStartup() { Display.getDefault().syncExec(new Runnable() {
public void run() {
long startTime = Long.parseLong(System
.getProperty("eclipse.startTime"));
long costTime = System.currentTimeMillis() - startTime; double dCostTime = costTime / 1000.0; Shell shell = Display.getDefault().getActiveShell(); String msg = "Eclipse 启动耗时: " + dCostTime + " 秒!"; MessageDialog.openInformation(shell, "Information", msg);
}
});
} }
回到刚刚那个 Extensions 标签页,在右侧点击 Browse ,选择刚建的Java 文件(ShowTime),保存。
OK , 接下来就是导出JAR文件。
2 导出JAR文件
2.1 选中项目,右键,选中 JAR file ,点击 Next

2.2 接下来,有2个地方需要注意,其他默认值即可:
1 选择打包的资源时,只需要选择 plugin.xml 即可
2 选择JAR文件导出的路径

2.3 点击 Next ,再点击 Next ,在指定 Manifest file 时,选择项目中已经存在的文件,如图:

2.4 点击 Finish ,完成导出。
3 安装插件
只需一步操作:将导出的JAR文件复制到 Eclipse 安装目录下的 dropins 目录。
DONE!
4 验证
重启 Eclipse 试试,是不是有类似下面的弹出信息:

【Eclipse】一个简单的 RCP 应用 —— 显示Eclipse 的启动时间。的更多相关文章
- 一个简单的数据查询显示jsp
以前使用jstl标签库只是使用core来显示一些数据,非常方便,今天看了下发现jstl还有其他的标签,使用都非常方便, 1.sql标签,可以直接访问数据库,后台代码都不需要了,这在某些时候非常适合使用 ...
- 一个简单便捷的树形显示Ztree
这是本人在闲时研究的一个用于显示树形列表的小玩意. zTree 是一个依靠 jQuery 实现的多功能 “树插件”.优异的性能.灵活的配置.多种功能的组合是 zTree 最大优点. 下面就说说怎么用吧 ...
- 01 . RPC简介原理及用Go实现一个简单的RCP
RPC简介 本地过程调用 // 正常情况下程序的执行和调用情况.例如有如下go语言代码: package main import "fmt" func main() { var a ...
- netsh interface portproxy的一个简单例子
netsh interface portproxy的微软帮助文档地址: https://technet.microsoft.com/zh-cn/library/cc776297(WS.10).aspx ...
- 用 Eclipse 创建一个简单的web项目
Eclipse neon 汉化版 ; 1;右击新建 --> 选择 动态Web项目 2: 填写 项目名 项目位置 ; 选择 Dynamic web module version 和 tomca ...
- 1.Maven+SpringMVC+Eclipse软件安装配置,Maven报插件错误,Eclipse总是卡死的解决办法,导入一个maven工程后 一直显示importing maven project
使用Maven+SpringMVC+Eclipse软件安装配置过程中的问题: 1.Eclipse总是卡死的解决办法: 一:内存不足所以会卡死,配置一下eclipse.ini修改这几个值就好了-X ...
- 在eclipse中配置一个简单的spring入门项目
spring是一个很优秀的基于Java的轻量级开源框架,为了解决企业级应用的复杂性而创建的,spring不仅可用于服务器端开发,从简单性.可测试性和松耦合性的角度,任何java应用程序都可以利用这个思 ...
- 用Eclipse 创建一个 简单的 Maven JavaWeb 项目
使用Maven 创建一个简单的 javaWeb 项目: 本篇属于 创建 JavaWeb 项目的第三篇: 建议阅读本篇之前 阅读 用 Eclipse 创建一个简单的web项目 ;本篇是这这篇文章的基础 ...
- 一个简单的Eclipse调试Debug流程(四)
本文链接:https://blog.csdn.net/u011781521/article/details/55000066 http://blog.csdn.net/u010075335/ar ...
随机推荐
- ubuntu -- 安装memcached
Memcached的安装依赖libevent.它是memcached所依赖的异步事件通知库,因此在安装memcached之前先要安装libevent. ubuntu安装软件的方法通常有两种 第一种:使 ...
- Spring cloud consul 相关前提知识
Spring boot .vs. Spring mvc spring boot extends spring mvc extends spring Spring Boot uses Spring ...
- linux和windows互传文件/用户配置文件和密码配置文件/用户组管理/用户管理
2.27linux和windows互传文件 3.1 用户配置文件和密码配置文件 3.2 用户组管理 3.3 用户管理 linux和windows互传文件 显示日期date [root@centos_1 ...
- 【NLP】Stanford
http://web.stanford.edu/class/cs224n/syllabus.html https://www.youtube.com/watch?v=OQQ-W_63UgQ&l ...
- DataList中动态显示DIV
<%# DataBinder.Eval(Container, "DataItem.ProductName").ToString() == "股票矩阵" ...
- 详解CorelDRAW中如何合并与拆分对象
合并两个或多个对象可以创建带有共同填充和轮廓属性的单个对象,以便将这些对象转换为单个曲线对象.可以合并的对象包括矩形.椭圆形.多边形.星形.螺纹.图形或文本等,本教程将详解CorelDRAW中关于合并 ...
- QT OpenGL绘制三维图形(立方体、圆柱体、圆锥、球体、圆环等等)
本文使用QGLWidget来绘制各种三维基本图形,包括立方体.圆柱体.圆锥.球体.圆环等等,涉及包括基本绘制以及上色.纹理.旋转等操作. 使用的软件版本:QT5.12 + QT Creater4.8. ...
- Html5新特性之文档声明和头部信息
Html5推出的新内容比较多,本文我们来介绍两个重点内容,文档类型声明和头部信息. 无论是Html4.01还是XHtml1.0,所有文档的开头都会有文档声明<!DOCTYPE>标签来声明它 ...
- Python_selenium二次封装selenium的几个方法
Python_selenium二次封装selenium的几个方法 将常用的几个webdriver方法封装到自己写的一个类中去,此实例中是将"浏览器后退.浏览器前进.打开站点和关闭浏览器&qu ...
- Oauth2.0(四):Implicit 授权方式
Oauth2.0的核心机制已经总结完毕.除了核心机制,Oauth2.0 还提供了几种标准的授权流程,分别适用于不同的场景.其中一种叫做 Implicit 授权,适用于纯静态页面应用.所谓纯静态页面应用 ...