Eclipse插件开发快速入门2

来源:百度文库 编辑:神马文学网 时间:2024/05/23 20:44:24
运行和调试

  你可以在一个特殊的沙盒(sandbox)--运行时工作台(runtimeworkbench)中测试自己的插件。使用这种方式的时候,即使运行时工作台崩溃了,Eclipse仍然能够工作。通过点击"预览"页面上的"载入运行时工作台"或"在调试模式中载入运行时工作台"链接。第一次运行运行时工作台的时候,会建立eclipse\runtime-workbench-workspace文件夹。它会启动一个新的Eclipse实例,该实例与正常的Eclipse窗口非常相似(除了你的插件可以使用了之外)。

  但是你还是首先选择文件 -> 新建 -> 项目菜单和Java项目来建立一个Java项目。这个项目的名称叫做Test。图6显示了带有我们建立的向导和编辑器的运行时工作台。


图6:运行该插件
现在我们看一下Invokatron向导。从菜单文件->新建 -> 其它可以看到它。查看类别Invokatron向导。选择Invokatron向导,接着点击"下一步"。这个向导会建立一个空的Invokatron文档。在Container(容器)字段中选择Test项目并点击"完成"。一个新的Invokatron编辑器显示出来了。这个编辑器有三个页面:一个文本编辑页面、一个属性页面(字体选择)和一个预览页面(排序的、用选择的字体绘制的)。

  支持文件

  你可以在很多位置指定自己的插件在编译和运行时所需要的文件。这使我们这些Eclipse用户感到很困惑。我们试图澄清这些问题。

  支持文件分为三类:

  1、来自插件代码自身的类和资源。它们在建立过程中就会被打包为一个或多个.jar文件。

  2、编译和运行插件所需要的类和资源。它们都应该被包含在类路径中,并且我们必须指明在导出的时候需要复制这些文件。

  3、与插件一起包含进来的文件(例如readme.txt文件)。它们不在类路径中。

  在插件编辑器的"建立(Build)"页面中可以设置编译环境。此外,这些设置会映射为build.properties文件。在第一次看到这个页面的时候我们可能会感到困惑,因为它有四个分开的部分:

  · 运行时信息:列出了生成的库文件(第1类文件)。通常,在一个库文件中包含了插件所需要的所有类,但是你可能希望把它分割成更小的块。

  · Source Build:列出应该被包含到.jar文件中的类文件(第1类文件的输入)

  · Binary Build:列出应该被复制到导出的插件文件夹或档案文件中的文件(第3类文件)。上面的选择框被选中的时候,生成的文件会被自动地包含进来。

  · 精确的类路径项:列出了在编译时刻你的应用程序所需要的.jar文件(第2类文件)。这些文件会被自动地添加到你的项目库中。我们通常容易犯的一个错误是在"属性"页面中的"Java建立路径"中和这个列表中同时包含了某个.jar文件。

  如果你的插件使用了某个特殊的库,就必须确保把这个库添加到项目中。接着把它添加到Source Build和精确的类路径项中。

  插件编辑器的其它一些重要的属性页面有:

  · 依赖关系(Dependencies):如果你的插件依赖于其它的插件,你就必须在这儿指定。

  · 运行时(Runtime):在这个属性页面中你可以为插件指定特殊行为。

  导出

  插件编码完成了,并且在工作台中测试过之后,就该准备部署到"真实的" Eclipse环境中了。要实现这个步骤,需要返回"预览"页面并点击"导出向导"链接。"导出选项"对话框允许你从三种部署类型中选择一个:

  · 目录结构:把文件部署到一个目录中供Eclipse立即使用。接着你可以把目标位置(Destination)设置为本地的Eclipse文件夹(例如c:\dev\eclipse),直接地使用插件。

  · 单个.zip文件:相同的文件夹会被压缩为一个.zip文件,准备好发布给客户。接下来,你必须把这个文件解压到Eclipse最上层的文件夹来安装插件。你必须在文件名字段中指定.zip文件名。

  · 更新站点使用的独立.jar文档文件:产生一个与Eclipse用于自动更新系统相兼容的.jar文件。

  你点击"完成"之后,会生成我们选中的输出。如果你把输出作为目录结构,就必须重新启动Eclipse以激活该插件。
查看示例和源代码

  关于如何编写Eclipse插件的最好信息来源是Eclipse所提供的插件示例集。如果我只能选择一个辅助自己编写插件的信息来源,我一定选择它。

如果你要下载这些插件,只需要访问Eclipse下载页面并选择最新的版本。接着看这个页面的中间,有一个"示例插件",请下载这些.zip文件(小于2MB)。把这些文件解压到Eclipse所在的文件夹(例如c:\dev)中。这个步骤会在eclipse/features和eclipse/plugins下建立很多文件夹。这些示例的源代码在C:\dev\eclipse\plugins文件夹的大量.zip文件中,如下所示:

示例 代码位置 SWT示例 在org.eclipse.sdk.examples.source_3.0.1\src...文件夹下 独立的   · 地址薄
· 剪贴板
· 文件查看器
· Hello World
· 悬浮帮助
· 图像分析器
· Java语法查看器
· 文本编辑器 ...\org.eclipse.swt.examples_3.0.0\swtexamplessrc.zip 与工作台集成的 · 浏览器 ...\org.eclipse.swt.examples.browser_3.0.0\ browserexamplesrc.zip · 控件 ...\org.eclipse.swt.examples.controls_3.0.0\controlssrc.zip · SWT载入程序 ...\org.eclipse.swt.examples.launcher_3.0.0\launchersrc.zip · 布局 ...\org.eclipse.swt.examples.layouts_3.0.0\layoutssrc.zip · 绘图 ...\org.eclipse.swt.examples.paint_3.0.0\paintsrc.zip · OLE 特殊文件夹:
org.eclipse.sdk.examples.source.win32.win32.x86_3.0.1\ src\org.eclipse.swt.examples.ole.win32_3.0.0\ olewin32src.zip 工作台示例   · Java编辑器 ...\org.eclipse.ui.examples.javaeditor_3.0.0\ javaeditorexamplesrc.zip · 模板编辑器 ...\org.eclipse.ui.examples.javaeditor_3.0.0\ templateeditorexamplesrc.zip · 多页面编辑器 ...\org.eclipse.ui.examples.multipageeditor_2.1.0<\ multipageeditorsrc.zip · 属性表 ...\org.eclipse.ui.examples.propertysheet_2.1.0\ propertysheetsrc.zip · Readme工具 ...\org.eclipse.ui.examples.readmetool_2.1.0\readmetoolsrc.zip 帮助示例 特殊文件夹:
org.eclipse.help.examples.ex1_3.0.0(没有Java文件;HTML在doc.zip之中) Team示例   · 知识库提供程序
· 同步共享 ...\org.eclipse.team.examples.filesystem_3.0.0\ teamfilesystemsrc.zip 文件比较示例   · 结构比较 ...\org.eclipse.compare.examples_3.0.0\ compareexamplessrc.zip · XML比较 ...\org.eclipse.compare.examples.xml_3.0.0\ xmlcompareexamplessrc.zip
还存在一些GEF和Draw2D插件的有用示例。你可以访问GEF页面并下载最新版本。在版本发布页面中间有"GEF示例",请下载该.zip文件。在写作本文的时候,该文件是GEF-examples-3.0.1.zip(0.5MB)。把这个文件解压到Eclipse所在的文件夹中。你将看到下面两个示例:

示例 代码位置 · 逻辑图表示例 org.eclipse.gef.examples.source_3.0.1\src\ org.eclipse.gef.examples.logic_3.0.0\logicsrc.zip · 流图表示例 org.eclipse.gef.examples.source_3.0.1\src\ org.eclipse.gef.examples.flow_3.0.1\flowsrc.zip
  查找插件开发的信息

  你首先查看的位置应该是本文前面部分中的示例。其次还有帮助系统,它的质量也非常高。相关的内容还有:

  · 平台插件开发

  · JTD插件开发

  · PDE指导

  · Draw2D开发者指导

  · GEF开发者指导

  结论

  现在你已经有了建立Eclipse图形化插件的足够信息了。有了这么多类库的帮助,只有你的想象力会限制你的作为了。其秘诀在于你要知道自己能够使用那些工具,并且使用正确的工具完成适当的工作。


Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=355167