到目前为止,我们已经查看了由自述文件工具提供的不同扩展。让我们考察自述文件工具插件的一般定义。
自述文件工具插件是在 plugin.xml 文件的顶部定义的。
<?xml version="1.0" encoding="UTF-8"?> <?eclipse version="3.0"?> <plugin id="org.eclipse.ui.examples.readmetool" name="%Plugin.name" version="2.1.0" provider-name="%Plugin.providerName" class="org.eclipse.ui.examples.readmetool.ReadmePlugin"> <runtime> <library name="readmetool.jar"/> </runtime> <requires> <import plugin="org.eclipse.ui"/> <import plugin="org.eclipse.core.resources"/> <import plugin="org.eclipse.core.runtime.compatibility"/> <import plugin="org.eclipse.ui.views"/> <import plugin="org.eclipse.ui.ide"/> <import plugin="org.eclipse.jface.text"/> <import plugin="org.eclipse.text"/> <import plugin="org.eclipse.ui.workbench.texteditor"/> <import plugin="org.eclipse.ui.editors"/> </requires> ...
插件定义包括插件的名称、标识、版本和供应商名称。我们以前在 Hello World 插件中看到过这些参数中的大部分。自述文件工具还定义专用插件类 ReadmePlugin。
还提供了 JAR 文件的名称。在 plugin.xml 文件中指定的文件名与插件的目录有关,因此,自述文件工具的 JAR 文件应该直接位于插件的目录中。
requires 元素通知平台自述文件工具的依赖性。工作台用户界面插件是作为必需的插件与各种核心、jface 和文本插件一起列示的。
ReadmePlugin 类表示自述文件工具插件,它负责管理插件的生命周期。正如我们在 Hello World 示例中看到的,不需要指定插件类。平台将为您提供一个插件类。在此情况下,插件在启动时需要初始化与用户界面相关的数据。平台类 AbstractUIPlugin 提供了用于管理用户界面资源的结构,并由 ReadmePlugin 扩展。
在插件的生存期期间,AbstractUIPlugin 使用一般启动和关闭方法来管理图像、对话框设置和首选项库。当我们使用对话框和首选项时,将考察 ReadmePlugin 类的细节。