插件类

到目前为止,我们已经查看了由自述文件工具提供的不同扩展。让我们考察自述文件工具插件的一般定义。

插件定义

自述文件工具插件是在 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 和文本插件一起列示的。

AbstractUIPlugin

ReadmePlugin 类表示自述文件工具插件,它负责管理插件的生命周期。正如我们在 Hello World 示例中看到的,不需要指定插件类。平台将为您提供一个插件类。在此情况下,插件在启动时需要初始化与用户界面相关的数据。平台类 AbstractUIPlugin 提供了用于管理用户界面资源的结构,并由 ReadmePlugin 扩展。

在插件的生存期期间,AbstractUIPlugin 使用一般启动和关闭方法来管理图像、对话框设置和首选项库。当我们使用对话框和首选项时,将考察 ReadmePlugin 类的细节。