使用 Equinox p2 简化 Eclipse 插件的安装

插件更新设备在 Eclipse V3.4 中已经完全重写,它现在使用 Equinox p2 框架代替了原来的更新管理器。Equinox p2 是一个新的、非常高级的配置系统,用于安装、搜索和管理 Eclipse 安装,并且比以前的更新管理器更容易使用。本文回顾了以前的更新管理器的缺陷,并解释用于安装和更新 Eclipse 插件的 Equinox p2 新特性。

Eclipse V3.4 之前的插件安装问题

在 Eclipse V3.4 之前,安装 Eclipse 插件非常麻烦。事实上,它复杂到只有高级用户才能安装新的插件。以前安装插件的方法有两种:手动下载和图形用户界面(GUI)。

手动下载和安装

手动下载方法就是您必须通过手动的方式下载插件,然后将一些文件解压缩到 features 文件夹,并将另一些文件解压缩到 plugins 文件夹。features 和 plugins 文件夹本身也包含一些默认的插件。这样一来,这些文件夹就包含了大量的文件。因此,在安装定制的插件之后,就分不清哪些插件是您安装的,哪些是 Eclipse 自带的。如果迁移到新版本的 Eclipse,您就必须细细查找 features 和 plugins 文件夹,找出您自己的定制插件,然后将它们复制到新的安装中。

这已经够复杂了,但您还必须使用参数 -clean 重启 Eclipse,以真正完成插件的安装。很多时候,我们会忘记使用 -clean 参数,然后想不明白为何已安装的插件没有出现。

GUI 安装

GUI 安装比手动安装强一些。事实上,这种方法需要单击 15 次以上才能安装一个插件,并且很多站点都提供带图片的教程页面,帮助用户正确使用 GUI 安装。这里不详细讲解这个 GUI,因为光用于解释它的图片就会使本文的篇幅增加一倍。但可以肯定的是,在 Eclipse V3.4 以前,安装插件的整个过程是相当混乱的。

回页首

手动安装 Eclipse V3.4 插件

Eclipse V3.4 中的 dropins 文件夹(如图 1 所示)相当于以前版本的 Eclipse 中的手动过程,但它更加简洁。


图 1. dropins 文件夹
使用 Equinox p2 简化 Eclipse 插件的安装 

dropins 文件夹位于 eclipse 文件夹的内部。要手动安装插件,只需将插件文件拖动到 dropins 文件夹,然后重启 Eclipse。这里不需要 -clean 参数。例如,在图 2 中,我们将 org.Eclipse.swt.spy_1.0.1.jar 文件拖放到 dropins 文件夹并重启 Eclipse,就完成了 swt spy 插件的安装。就这么简单!


图 2. 安装 swt spy 插件
使用 Equinox p2 简化 Eclipse 插件的安装 

反过来,如果要删除插件,只需从 dropins 文件夹将它删除,然后重启 Eclipse。

管理插件

为了更好地管理插件,我们在 dropins 内部创建了一个称为 swt spy 的文件夹,并将插件文件放在里面。


图 3. 将 swt spy 插件安装到 SWT Spy 文件夹中 
使用 Equinox p2 简化 Eclipse 插件的安装 

使用这种方法,您可以为每个需要安装的定制插件创建一个文件夹,用于放置插件文件。这样方便管理定制插件,因为它们彼此是分开的。如果要移动到不同的 Eclipse 安装,仅需复制 dropins 文件夹的内容,这样所有定制插件都会出现在新的安装中。

这种方法有一个缺点:除非安装的插件在它的文件内部指定一个更新站点,否则 Eclipse 不能自动检查更新。

在多个 Eclipse 安装之间共享插件

如果您使用多个 Eclipse 安装,您可以配置一个*共享 dropins 文件夹,然后将所有 Eclipse 安装所使用的 Eclipse 插件放到这里。配置每个 Eclipse 安装,以使用* dropins 文件夹:

  1. 创建一个用作* dropins 文件夹的文件夹(例如,C:\mydropins)。
  2. 对于每个将要使用这个文件夹的 Eclipse 安装,转到安装目录并打开 eclipse.ini 文件(例如,C:\Eclipse\Eclipse.ini)。
  3. 将以下的行添加到 eclipse.ini 文件的末尾:-Dorg.Eclipse.equinox.p2.reconciler.dropins.directory=C:\mydropins。( 将 C:\mydropins 替换为* dropins 文件夹的路径)。
  4. 保存 Eclipse.ini 文件,并将需要的插件放置到 C:\mydropins 文件中,就像对待本地 Eclipse dropins 文件夹一样。
  5. 重启配置后的 Eclipse 安装。您会看到它已将需要的插件放置到* dropins 文件夹。

注意,现在每个 Eclipse 安装都有两个 dropins 文件夹:

  • 一个本地文件夹(例如,C:\Eclipse\dropins)
  • 一个*文件夹(例如,C:\mydropins)

现在,配置好* dropins 文件夹之后,就不再需要为每个不同的 Eclipse 安装复制插件了。您仍然可以将特定于某个 Eclipse 安装的插件安装到它的本地 dropins 文件夹,或使用 Equinox p2 Update UI 进行安装。我们将在下一小节讲述 Equinox p2 Update UI。

回页首

使用 Equinox p2 Update UI 安装 Eclipse V3.4 插件

现在看看如何在 Eclipse 中使用 Equinox p2 Update UI 安装插件。要启动这个 UI,单击 Help > Software Updates


图 4. Help 菜单
使用 Equinox p2 简化 Eclipse 插件的安装 

这将显示图 5 所示的 Software Updates and Add-ons 对话框。它包含两个选项卡:Installed Software 选项卡用于更新或删除现有的插件;Available Software 选项卡用于安装新的插件。


图 5. Software Updates and Add-ons 对话框
使用 Equinox p2 简化 Eclipse 插件的安装 

为了安装插件,您需要它的更新站点的 URL。更新站点包含 Eclipse 下载、安装和更新插件时需要的文件和元数据。通常,提供插件的站点会提供更新这些插件的站点的 URL。

获得更新站点所需的 URL 之后,单击 Available Software 选项卡,然后单击 Add Site。在 Add Site 对话框的 Location 框中输入更新站点的 URL,如图 6 所示,然后单击 OK。该站点就被添加到 Available Software 列表。


图 6. 添加更新站点
使用 Equinox p2 简化 Eclipse 插件的安装 

您甚至可以将更新站点的 URL 从浏览器直接拖到 Available Software 列表,这样它就会添加到用于检查插件的站点列表。

展开列表中的一个站点,选择需要安装的插件。


图 7. 从更新站点选择需要安装的特性
使用 Equinox p2 简化 Eclipse 插件的安装 

现在,单击 Install,然后按照对话框的说明进行操作。最后,它会提示您重启 Eclipse。单击 yes。重启 Eclipse 之后,新的插件就安装完毕并开始运行。

更新插件

要更新插件,通过单击 Help > Software Updates 再次转到更新 UI。Installed Software 选项卡列出所有已经安装的插件。选择需要更新的插件并单击 Update

卸载插件

类似地,要卸载现有的插件,只需在 Installed Software 选项卡中选择想要移除的插件,然后单击 Uninstall。最后会提示您重启 Eclipse。

恢复配置

Eclipse 保持了一个关于所有安装、更新和卸载的插件的快照。因此,如果您的插件的最新更新带来一些问题,或者您意外卸载了一个不应该卸载的插件,您就可以将 Eclipse 恢复到以前的正常配置。

要恢复以前的配置,请在 Installed Software 选项卡上单击 Revert Software Configuration。这将打开 Revert Software Configuration 对话框(如图 8 所示),列出以前的 Eclipse 配置的所有快照。


图 8. Revert Software Configuration 对话框
使用 Equinox p2 简化 Eclipse 插件的安装 

选择需要恢复的配置,然后单击 Finish。它将提示您重启 Eclipse;单击 Yes,重启后,将恢复到您选择的配置。重启之后,您可以在 Installed Software 页面查看插件列表,确保该列表与您选择的配置相符。

自动化更新

您可以配置 Eclipse 将插件自动更新到最新的版本。注意,这仅适用于具有更新站点的插件。放置在 dropins 文件夹中的插件可能没有特定的更新站点,因此 Eclipse 不能自动更新它们。

要配置自动更新,请转到 Window > Preferences > Install Updates > Automatic Updates,并打开 Automatic Updates 页面。


图 9. Automatic Update 页面
使用 Equinox p2 简化 Eclipse 插件的安装 

选中标签为 Automatically find new updates and notify me 的框。就更新插件而言,这就够了。不过,您还可以配置自动更新的各个选项。您可以配置更新计划,让它在平台的每次启动时查找更新,或者在特定的时间间隔进行更新。此外,也可以配置为查找到更新时自动下载更新。这样,只有 Eclipse 准备安装更新时,才会通知您。要实现这个功能,请在 Download Options 下面选择Download new updates automatically and notify me when ready to install them。不过,如果您希望在下载更新之前通知您,则要选择 Search for updates and notify me when they are available。选择这个选项时,只有经过您的同意才会下载更新。

When updates are found 下面的选项告诉 Eclipse 什么时候通知您已有新的更新。您可以选择 Notify me once about updates,让它只通知一次(通常是启动 Eclipse 时),或选择其他选项,让它在特定的时间间隔通知您。

回页首

在 Eclipse V3.4 中使用旧的更新管理器

如果您不在乎 Equinox p2 Update UI 提供的诸多优点和向后兼容性,而是坚持使用旧的更新管理器,当然也是可以的。转到Window > Preferences > General > Capabilities,选择 Classic Update 并单击 OK。这会同时启用旧的更新管理器 UI 和新的 Equinox p2 Update UI。这时,Help 菜单将包含两个选项,如下所示。


图 10. 启用典型的更新后,Help 菜单会显示两个更新选项
使用 Equinox p2 简化 Eclipse 插件的安装 

回页首

Equinox p2 安装程序

这里还有一个很小的、独立的安装程序,您可以使用它安装 Eclipse。与手动下载和安装相比,使用 Equinox p2 安装程序下载和安装 Eclipse 插件有几个好处:

  • 它支持多线程下载,实现快速下载。
  • 它对需要下载的文件使用 Pack200 压缩。文件在下载完成之后会自动解压缩。
  • 它会自动选择最佳的镜像,并且在失败时会动态地切换镜像。
  • 它支持代码证书验证,确保下载的内容来自可靠的来源。

您可以从 Equinox 下载页面获得 Equinox 安装程序(参见 参考资料)。安装程序下载完成之后,只需在解压缩后运行它,就可以用来安装 Eclipse 了。在 Eclipse 安装完成之后,就可以安全地删除这个安装程序了。

回页首

结束语

本文介绍了 Equinox p2 框架提供的用于安装和管理 Eclipse 插件的新特性,并且阐述了它为何优于 Eclipse V3.3 的更新管理器。它为手动安装提供了简单的 dropins 文件夹,并为从更新站点安装插件提供了强大易用的 GUI。共享的 dropins 文件夹方便集中管理多个 Eclipse 安装的插件。当然,需要很多技术来支持这些功能,但 Equinox 的内部构造是另一篇文章的主题。