`
sunway
  • 浏览: 115148 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

第一章 创建一个GEF Editor插件

阅读更多
From:http://www.blog.edu.cn/user1/19180/archives/2005/372830.shtml

1.1 向导
创建一个Plug-In Development->Plug-In Project,中间选择一路next直到选择模板的时候什么也不选择,直接按Finish。此时创建了一空的插件项目。

之后删除META-INF目录,然后在项目文件夹下新建plugin.xml文件,在文件中输入:


<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<plugin>
</plugin>

保存plugin.xml后,就建立了一个空的配置文件。

这里首先解释为什么要删除MANIFEST.MF文件,而创建plugin.xml文件?因为在插件在执行的时候,eclipse平台根据plugin.xml中的信息配置插件,如果plugin.xml和MANIFEST.MF同时存在,那么eclipse将不能正确载入插件。这是因为有些信息一旦在MANIFEST.MF记录,就不会再写入plugin.xml。当然,我没有试过单独使用manifest.mf配置插件。

这个时候查看一下eclipse为我们创建的文件,在src下有一个包和一个文件,这些都是在向导中设置的,如果向导中是胡乱填写的也没有关系,可以将它们删除,然后自己创建。这些文件的作用稍后再介绍,下面讲述如何配置plugin.xml。



1.2 配置plugin.xml
plugin.xml是插件项目的配置文件,eclipse根据这个文件中记录的信息来在如何管理插件。这个文件中记录了插件的扩展点、主类等重要信息,对于新建的插件项目,首先就应该要配置这个文件。如果你使用的是manifest.mf,配置的过程基本上类似,这里不再说明。

双击plugin.xml,进入一个编辑界面,该界面下方有一些切换页,包括Overview、Dependencies、Runtime、Extensions、Extension Point、Build等。我们按照顺序依次进行说明和配置。

1.2.1 Overview页 这个页中主要包括了插件的基本信息,同时也包括了一些其他页的连接。

这个页面中最重要的内容就是设置General Infomation中的class项,至于General Infomation中的其他项,可以根据自己的需要填写,不会影响插件的功能。这个class项就是插件的载入主文件,也就是向导中为我们创建的而被我们删除的(也可以不删除)文件,如果你刚才删除了那个文件,这个时候就需要根据你的需要重新创建一个主文件。在class项中填写你的主文件名就可以了,如果填写错误,那么插件将不能正确工作。

1.2.2 Dependencies页 Dependencies页中设定了你编写的插件需要用到那些模块和插件,这是由于eclipse的扩展机制所决定的。对于基于GEF的编辑器插件,一般来说应包括:
org.eclipse.core.runtime
org.eclipse.gef
org.eclipse.ui
org.eclipse.ui.views
这几个插件。你可以通过点击Add按钮增加新的插件依赖,通过remove删除插件依赖。至于其他插件项目需要使用哪些依赖,请查看相应的资料,我并没有对这一问题有过深究。

1.2.3 Runtime页 这里是用来设置插件运行时的类库文件,是一个jar文件。点击New增加新的文件,输入你想要的文件名。

这一步骤比较简单,但是这里输入的类库文件决定了Build页中的内容,这一问题等到Build页在详细说明。

1.2.4 Extensions页 这个页面里面包含了很重要的设置,它用来描述插件扩展了怎样的功能。点击Add会增加一个扩展,对于一个GEF编辑器插件,一般来说应该选择org.eclipse.ui.editors,注意不要选择Available Templates。

选中新建的条目,右键点击该条目,选择new->editor(对于org.eclipse.ui.editors),就会增加一个editor条目(不同的扩展会有不同的选择)。选中这个条目,旁边的Extension Element Details就会出现关于这个条目的信息。下面来说明一下主要应该填写的内容:
id:插件的ID,随便什么都行,只要不重复,不妨设置为你的主文件名。
name:插件的名字,随便起好了。
icon:插件的图标,这个就随意了,可以不填。
extensions:插件的扩展名,这就好像是在eclipse上为打开的文件和插件之间建立一个映射,文件的扩展名为这个的时候eclipse启用这个插件进行编辑。这个非常重要。
class:最重要的设置,在这里填写实现了插件主控制器的类。简单来说,这个类告诉eclipse如何创建GEF插件的主界面。必须填写这个类,但是我们还没有建立这个类,因此可以暂时留空。
command:不知道用途,可以不填。
launcher:不知道用途,感觉上好像是启用插件的加载器,可以不填。
contributorClass:实现工具栏的类,可以不填,如果你不需要工具栏的话(事实上还有另一种方法实现工具栏的大部分功能,在后面介绍调色板的时候再说明)。

剩余的使用默认值就可以了。

1.2.5 Extension Points页 这一页的功能还没有搞清楚,在实践当中好像不是必须的,因此可以不填。

1.2.6 Build页 在这里要配置如何生成插件,这个页中的内容和Runtime中的有关。选择Add Library输入在Runtime页中输入的类库名,并且删除默认的build项目(也可以直接rename)。在选中新建的类库,点击右边的Add Folder,选中源文件的目录并确定。这样将源文件加入到编译输入中。再在Binary Build中选择plugin.xml,这就大功告成了。

1.2.7 小结 配置PlugIn.xml的工作基本完毕(注意除了没有填写Extensions页中的class项:P)。但是插件此时并不能工作,因为我们还没有编写两个关键的文件,一个就是插件的主文件,另一个就是插件的主界面文件(姑且这么称呼吧)。 下面就是要介绍如何编写这两个文件,以及基本的代码实现。

 

分享到:
评论

相关推荐

    Eclipse插件开发学习笔记(第一章)

    第一篇介绍Eclipse平台界面开发的基础知识,包括SWT控件的使用、界面布局、事件处理等内容;第二篇是插件开发核心技术,主要介绍插件开发的核心知识要点,包括行为(Action)、视图(ViewPart)、编辑器(Editor)、...

    Eclipse插件开发笔记—PDF—带目录

    第10章 开发 第一个插件项目 第11章 操作(Actions) 第12章 视图(Views) 第13章 编辑器(Editors) 第14章 透视图(Perspectives) 第15章 对话框和向导(DialogsWizards) 第16章 首选项(Preferences) 第17章 帮助内容...

    Eclipse插件开发学习笔记(第二篇 核心技术 9-13章)

    第一篇介绍Eclipse平台界面开发的基础知识,包括 SWT控件的使用、界面布局、事件处理等内容;第二篇是插件开发核心技术,主要介绍插件开发的核心知识要点,包括行为(Action)、视图(ViewPart)、编辑器(Editor)...

    Eclipse插件开发学习笔记(第二篇 核心技术 14-18章)

    第一篇介绍Eclipse平台界面开发的基础知识,包括 SWT控件的使用、界面布局、事件处理等内容;第二篇是插件开发核心技术,主要介绍插件开发的核心知识要点,包括行为(Action)、视图(ViewPart)、编辑器(Editor)...

    Eclipse插件开发 学习笔记(第二章上)

    第一篇介绍Eclipse平台界面开发的基础知识,包括SWT控件的使用、界面布局、事件处理等内容;第二篇是插件开发核心技术,主要介绍插件开发的核心知识要点,包括行为(Action)、视图(ViewPart)、编辑器(Editor)、...

    Eclipse插件开发学习笔记(ch22-24)

    这一章将指导开发者如何从头开始构建一个完整的Eclipse插件,包括插件项目的设置、编写插件的清单文件、实现插件功能、进行调试和测试。通过这个实例,读者能够更好地理解Eclipse插件生命周期、服务注册以及与其他...

    eclipse 插件开发01

    第二篇是插件开发核心技术,主要介绍插件开发的核心知识要点,包括行为(Action)、视图(ViewPart)、编辑器(Editor)、透视图(Perspective)等10章的内容;第三篇主要讲述插件开发的高级内容,包括开发高级内容...

    Eclipse插件开发学习笔记 第三四篇(26-28)+原代码.rar

    第二篇是插件开发核心技术,主要介绍插件开发的核心知识要点,包括行为(Action)、视图(ViewPart)、编辑器(Editor)、透视图(Perspective)等10章的内容;第三篇主要讲述插件开发的高级内容,包括开发高级内容...

    《Eclipse插件开发学习笔记》源码

    第一篇介绍Eclipse平台界面开发的基础知识,包括SWT控件的使用、界面布局、事件处理等内容;第二篇是插件开发核心技术,主要介绍插件开发的核心知识要点,包括行为(Action)、视图(ViewPart)、编辑器(Editor)、...

    Eclipse插件开发 学习笔记(第三四章上)

    第一篇介绍Eclipse平台界面开发的基础知识,包括SWT控件的使用、界面布局、事件处理等内容;第二篇是插件开发核心技术,主要介绍插件开发的核心知识要点,包括行为(Action)、视图(ViewPart)、编辑器(Editor)、...

    Eclipse插件开发学习笔记(第一篇 开发基础 1-8章)

    第一篇介绍Eclipse平台界面开发的基础知识,包括 SWT控件的使用、界面布局、事件处理等内容;第二篇是插件开发核心技术,主要介绍插件开发的核心知识要点,包括行为(Action)、视图(ViewPart)、编辑器(Editor)...

    Eclipse插件开发学习笔记22-24章.rar

    《Eclipse插件开发学习笔记22-24章》是针对Eclipse平台进行插件开发的深入学习资料,涵盖了GEF(Graphical Editing Framework)的介绍与实践,以及具体的插件开发实例。通过这三个章节的学习,开发者可以掌握Eclipse...

    Eclipse+插件开发学习笔记

    第二篇是插件开发核心技术,主要介绍插件开发的核心知识要点,包括行为(Action)、视图(ViewPart)、编辑器(Editor)、透视图(Perspective)等10章的内容;第三篇主要讲述插件开发的高级内容,包括开发高级内容...

    Eclipse插件开发 学习笔记(第三四章下包含源码)

    第一篇介绍Eclipse平台界面开发的基础知识,包括SWT控件的使用、界面布局、事件处理等内容;第二篇是插件开发核心技术,主要介绍插件开发的核心知识要点,包括行为(Action)、视图(ViewPart)、编辑器(Editor)、...

    eclipse插件开发学习笔记_教程2

    第一篇介绍Eclipse平台界面开发的基础知识,包括SWT控件的使用、界面布局、事件处理等内容;第二篇是插件开发核心技术,主要介绍插件开发的核心知识要点,包括行为(Action)、视图(ViewPart)、编辑器(Editor)、...

    Eclipse插件开发学习笔记(第三篇高级进阶 19-22章)

    第一篇介绍Eclipse平台界面开发的基础知识,包括 SWT控件的使用、界面布局、事件处理等内容;第二篇是插件开发核心技术,主要介绍插件开发的核心知识要点,包括行为(Action)、视图(ViewPart)、编辑器(Editor)...

    Eclipse插件开发+学习笔记(完整 清晰) part1

    第一篇介绍Eclipse平台界面开发的基础知识,包括SWT控件的使用、界面布局、事件处理等内容;第二篇是插件开发核心技术,主要介绍插件开发的核心知识要点,包括行为(Action)、视图(ViewPart)、编辑器(Editor)、...

    Eclipse+插件开发 学习笔记(完整 清晰).part4.rar

    第一篇介绍Eclipse平台界面开发的基础知识,包括SWT控件的使用、界面布局、事件处理等内容;第二篇是插件开发核心技术,主要介绍插件开发的核心知识要点,包括行为(Action)、视图(ViewPart)、编辑器(Editor)、...

    Eclipse插件开发学习笔记 第三四篇(22-25).rar

    第二篇是插件开发核心技术,主要介绍插件开发的核心知识要点,包括行为(Action)、视图(ViewPart)、编辑器(Editor)、透视图(Perspective)等10章的内容;第三篇主要讲述插件开发的高级内容,包括开发高级内容...

    Eclipse插件开发 学习笔记 第一篇 开发基础(01-05).rar

    Eclipse插件开发 学习笔记 第一篇 开发基础(01-05).rar Eclipse插件开发 学习笔记 第一篇 开发基础(06-10).rar Eclipse插件开发 学习笔记 第二篇 核心技术(11-16).rar Eclipse插件开发 学习笔记 第二篇 核心技术(17-...

Global site tag (gtag.js) - Google Analytics