eclipse+plug-in+开发参考

上传人:小** 文档编号:88101392 上传时间:2019-04-19 格式:PDF 页数:32 大小:433KB
返回 下载 相关 举报
eclipse+plug-in+开发参考_第1页
第1页 / 共32页
eclipse+plug-in+开发参考_第2页
第2页 / 共32页
eclipse+plug-in+开发参考_第3页
第3页 / 共32页
eclipse+plug-in+开发参考_第4页
第4页 / 共32页
eclipse+plug-in+开发参考_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《eclipse+plug-in+开发参考》由会员分享,可在线阅读,更多相关《eclipse+plug-in+开发参考(32页珍藏版)》请在金锄头文库上搜索。

1、 Eclipse Plug-in 开发参考 Eclipse Plug-in 开发参考开发参考 中软国际有限公司中软国际有限公司 产品与技术服务部产品与技术服务部 中软国际有限公司 第 1 页 共 32 页 Eclipse Plug-in 开发参考 第一章第一章 ECLIPSE 扩展点开发模式扩展点开发模式.3 1.1 ECLIPSE插件化结构 3 1.2 一个简单的例子:在基本工作台上添加VIEW4 1.2.1 编写代码5 1.2.2 安装与运行插件.7 第二章第二章 ECLIPSE平台插件开发平台插件开发.9 2.1.1 工作台内的一些可视组件.9 2.1.2 工作台的基本扩展点.11 第三

2、章第三章 JDT开发开发 18 第四章第四章 PDE开发开发19 4.1 较复杂的完整插件开发示例.20 4.1.1 透视图20 4.1.2 透视图操作集.21 4.1.3 视图与视图操作集.22 4.1.4 编辑器24 4.1.5 透视图扩展.26 第五章第五章 ECLIPSE PLUG-IN API28 5.1 资源.28 5.1.1 资源和本地文件系统.28 5.1.2 链接的资源.29 5.2 类结构.30 5.2.1 IWorkbench 30 5.2.2 IWorkbenchPage31 5.2.3 IWorkbenchPart.31 5.2.4 IWorkbenchWindow3

3、1 5.2.5 IWorkbenchSite 32 5.2.6 IPageSite32 5.2.7 IWorkbenchPartSite.32 中软国际有限公司 第 2 页 共 32 页 Eclipse Plug-in 开发参考 第一章 第一章 Eclipse 扩展点开发模式扩展点开发模式 1.1 Eclipse 插件化结构插件化结构 Eclipse 平台是根据扩展点这一概念来建立的。扩展点是系统中严格定义的一些位置,同时其它工具 (称为插件)可以在此添加功能。平台中的每个主要子系统(Java Team Debug )本身是由一组插件 来构成的,这些插件实现一些重要功能并定义扩展点。Eclip

4、se 系统本身是通过向第三方插件供应商可以 使用的相同扩展点作添加来构建的。插件可以定义它们自己的扩展点,或者只是将扩展添加至其它插件的 扩展点。 平台子系统通常将可视功能部件添加到平台中,并提供 API 来扩展它们的功能。这些组件中的 某些组件提供与扩展点不直接相关,但可用来实现扩展的附加类库。例如,工作台用户界面提供 JFace 用 户界面框架和 SWT 小窗口工具箱。 Eclipse SDK 中包含基本平台以及两个主要工具, 它们对于插件开发很有用。 “Java 开发工具” (JDT) 实现了全功能的 Java 开发环境。“插件开发者环境”(PDE)添加了专门工具来使开发插件和扩展更为顺

5、 利。一般我们应该使用 PDE 来进行插件开发,它提供了很多模板。 现在我们先来熟悉一下 Eclipse 平台各部分的名称: 中软国际有限公司 第 3 页 共 32 页 Eclipse Plug-in 开发参考 每个“工作台(Workbench)”窗口都包含一个或多个透视图(Perspective)。透视图则包含视图 (View)和编辑器(Editor),并且控制出现在某些菜单栏(Menubar)和工具栏(Toolbar)中的内容。在 任何给定时间,桌面上都可以存在多个“工作台”窗口。 1.2 一个简单的例子:在基本工作台上添加一个简单的例子:在基本工作台上添加 View 和一贯的做法一样,我

6、们从一个hello world插件入手,对于 hello world 插件,我们将实现自己的 视图,以便用“Hello World”来向用户问好。包 org.eclipse.ui 及其子包中包含用来定义工作台用户界面 (UI)API 的公共接口。这些接口中的许多接口都具有缺省实现类,可以扩展这些类以便对系统提供简单 的修改。在 hello world 示例中,我们将扩展工作台视图,以提供一个用来问好的Label。 很重要的一个接口就是 IViewPart,它定义向工作台添加视图而必须实现的方法。类 ViewPart 提 供了此接口的缺省实现。简而言之,视图部件负责创建显示视图所必需的小窗口。

7、工作台中的标准视图通常显示有关用户已经选择或者正在浏览的对象的一些信息。视图根据工作台中 发生的操作来更新它们的内容。在我们的示例中,只是问好,所以我们的视图非常简单。 中软国际有限公司 第 4 页 共 32 页 Eclipse Plug-in 开发参考 1.2.1 编写代码编写代码 首先我们必须扩展ViewPart类来实现自己的View: import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Label; import org.eclipse.swt.SWT; import org.eclipse.u

8、i.part.ViewPart; public class HelloWorldView extends ViewPart Label label; public HelloWorldView() public void createPartControl(Composite parent) label = new Label(parent, SWT.WRAP); label.setText(“Hello World“); public void setFocus() /设置哪一个widget可以获得焦点 可以看出,实际上我们的功能都是在 createPartControl 方法中实现的。OK

9、,现在我们已经完成了 一个视图的实现: 现在的问题就是:如何运行代码并将之添加到工作台中。那么根据Eclipse的插件运行原理,我们需 要通知平台我们想要添加视图。这是通过扩展 org.eclipse.ui.views 扩展点完成的。通过提供清单文件 plugin.xml 注册扩展,该清单文件描述插件,包括插件的代码所在的位置以及正在添加的扩展。 中软国际有限公司 第 5 页 共 32 页 Eclipse Plug-in 开发参考 在此文件中,为插件定义了名称、标识和版本。还列示了我们必需的插件。由于我们在插件中使用了 工作台和 SWT API,因此必须列示 org.eclipse.ui。还必

10、须描述我们的可执行代码所在位置。我们打算 将代码封装在 helloworld.jar 中,所以将其注册库名。 最后,声明插件正向哪个扩展点进行添加。org.eclipse.ui.views 扩展具有几个不同的配置参数。 首先为视图扩展声明类别。在工作台显示视图对话框中,可以使用类别来将相关视图集中在一起。我们定 义了自己的类别“Hello”,以便使它显示在它自己的组中。为我们的视图声明了唯一的标识,并指定用来提 中软国际有限公司 第 6 页 共 32 页 Eclipse Plug-in 开发参考 供视图的实现的类的名称。还为视图指定了名称“Hello Greetings”,它将显示在“显示视图

11、”对话框和视图 的标题栏中。 在插件清单文件中使用了许多标识。个别扩展点通常会定义需要标识的配置参数(例如,以上用于视 图扩展点的类别标识) 。我们还要定义插件标识。通常,应该对所有标识都使用 Java 包名前缀,以便确 保所有已安装的插件都是唯一的。 在前缀后面使用的特定名称完全由您自己决定。然而,如果插件标识前缀刚好与其中一个包的名称相 同,则应该避免在该包中使用类名。否则,将很难分辨您正在查看标识名还是类名。 还应该避免对不同的扩展配置参数使用相同的标识。在上述清单中,已经使用了公共标识前缀 (org.eclipse.examples.helloworld) ,但是,我们的所有标识都是唯

12、一的。此命名方法可以帮助我们阅 读文件并了解哪些标识是相关的。 此时,我们已经实现了视图并在插件清单中声明了添加项。现在需要将插件安装到平台中以便可以运 行它。 1.2.2 安装与运行插件安装与运行插件 首先,以 plugin.xml 文件中定义的 plugin 的 id 为名称创建一个目录,然后将 helloworld.jar 与 plugin.xml 文件放进去。将这个文件夹放在 eclipse 的 plugin 目录下即可,与其他插件一样: 如果当前正在运行工作台,则需要关闭它然后再重新启动它。当平台启动时,它将装入系统中安装的 所有插件的列表,称为插件注册表。此注册表记录插件和她们进行

13、添加的扩展点。重新启动工作台将导致 它找到新插件。 如何运行插件?可以使用窗口窗口 显示视图菜单显示视图菜单来查看插件已添加的所有视图。 中软国际有限公司 第 7 页 共 32 页 Eclipse Plug-in 开发参考 此菜单告诉我们哪些视图可用于当前透视图。可以通过选择其它来查看添加到平台的所有视图(不考 虑透视图) 。这将显示视图类别以及每一类别下面所包含的视图的列表。通过使用插件注册表来查找已经为 org.eclipse.ui.views 扩展点提供扩展的所有插件,工作台就可以创建视图的完整列表。 这样就好了!已经将称为“Hello Greetings”的视图添加到类别“Hello”

14、下面的显示视图窗口中。我们 中软国际有限公司 第 8 页 共 32 页 Eclipse Plug-in 开发参考 的类别和视图的标号是从 plugin.xml 中的扩展点配置标记中获得的。 直到此时,我们仍然没有运行我们的插件代码!plugin.xml 中的声明足以使工作台知道 “Hello”类 别中有一个称为“Hello View”的视图。它知道哪个类实现了该视图。但是,在决定显示该视图之前,我们 的所有代码都不会运行。如果从显示视图列表中选择“Hello Greetings”的视图,则工作台将激活插件,实 例化并初始化视图类,并在工作台中显示新视图以及所有其它视图。现在,我们的代码正在运行

15、。 这就是我们的第一个插件! 第二章 第二章 Eclipse 平台插件开发平台插件开发 从上面的例子我们已经大致了解了 Eclipse Plug-in 这种扩展扩展点的开发模式,下面我们看看基本 工作台上的各种扩展点及其扩展方法。 2.1.1 工作台内的一些可视组件工作台内的一些可视组件 我们已经使用术语工作台来不太严格地表示“启动平台时打开的窗口”。当使用术语工作台时,我们指 的是工作台窗口(IWorkbenchWindow) 。工作台窗口是工作台中的顶级窗口。它是用来保存菜单栏、工 具栏、状态行、快捷方式栏和页面的框架。通常,您不需要对工作台窗口进行编程。您只需要知道它在那 中软国际有限公司 第 9 页 共 32 页 Eclipse Plug-in 开发参考 里。从用户的观点来看,工作台包含视图和编辑器。还有一些其它类用来实现工作台窗口。 2.1.1.1 页面页面 在工作台窗口内部,您将发现一个页面(IWorkbenchPage) ,它也包含部件。页面是将部件分组的 实现机制。通常,您不需要对页面进行编程,但是,您将看到它处于编程和调试的上下文中。 2.1.1.2 透视图透视图 透视图在工作台页面内提供附加组织层。透视图定义针对给定用户

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号