文章Eclipse插件(RCP)开发环境搭建 和 Eclipse插件(RCP)开发环境搭建(二)介绍了RCP项目开发环境搭建。本文将使用前面打的环境进行第一个RCP项目搭建及运行
目标
搭建一个RCP示例程序,并运行。
项目搭建
-
启动IDE -
点击资源导航中的 Create a plug-in project 进入plug-in 项目创建向导。 如上图,在创建向导页面中输入项目名称RCP01,运行目标勾选 Eclispe,然后点击下一步,进行下一步操作。 -
设置创建的是一个RCP项目 如上图完成编辑及勾选,其中 ID 项和Activator的项有关联,及Activator中的前半段必须与ID值一样。 这个ID值我们在后面的步骤中会设置为包名。如不一致,创建的项目可能会有问题(见文章最后) Create a rich client application? 勾选 yes 表示我们要创建的plug-in项目是一个RCP项目。 设置完成后点击 Next ,进入下一个页面。 -
选择一个模板 Eclipse 提供了几个常见不同的RCP模板工程,我们选择最后一个模板。 选择好后点击 Next 进入下一步,这里可以直接点击 Finsh 。 -
设置项目信息 该页面可以设置项目名称,包结构及启动类名称。 设置完成后即可点击 Finish ,等待项目创建完成。 创建好的项目结构如下
运行
方式一
- 打开 plugin.xml 文件
- 点击Testing下
Launch an Eclipse application 运行。 方式二 - 点击运行图标右边的小三角,然后点击
Run Configurations… - 配置Main
选中Eclipse Applications ,点击新建图标,输入Name信息,勾选 Clear 属性,Program to Run 中两个都可以选,一个是以产品的方式启动,另一个是以App的方式启动 - 配置Plug-ins
选中Plug-ins 页签,Launch with 选 plug-ins selected below only ,点击 Add Required Plug-ins ,然后点击 Apply > Run
因为勾选了运行时工作空间清理,会询问是否清理,清理即可。
- 运行结果
遇到的问题
解决方法
打开类Activator.java 在其中定义静态字段PLUGIN_ID,修改后Activator.java 完整代码如下:
package com.xzbd.rcp01;
import org.osgi.framework.BundleActivator;
import org.osgi.framework.BundleContext;
public class Activator implements BundleActivator {
public static final String PLUGIN_ID = "com.xzbd.rcp01";
private static BundleContext context;
static BundleContext getContext() {
return context;
}
public void start(BundleContext bundleContext) throws Exception {
Activator.context = bundleContext;
}
public void stop(BundleContext bundleContext) throws Exception {
Activator.context = null;
}
}
- src下多了一个rcp01包,且
Activator.java 下该包中。 这种结构不规范,可以将Activator.java 拖动到com.xzbd.rcp01 包中,然后删除src下的rcp01包。 操作完后结果如下Launch an Eclipse application 即可启动
|