Eclipse Update Manager的使用
6.5 使用Update Manager
通过使用Update Manager的用户界面和API命令,我们可以添加新安装位置,管理功能部件,以及与更新站点进行交互。至于到底是使用Update Manager的用户界面,还是使用Update Manager的API命令,这可能更依赖于是谁(用户或者安装程序)作出这些修改的。Update Manager的用户界面所提供的功能与Update Manager的API命令等效。但是用户界面提供的信息反馈功能和功能部件搜索功能要比相应的API命令更好。
安装位置是配置中的基本构建块。在配置中一定会含有基本安装位置信息或根目录安装位置信息。其他相关信息可在需要时添加到配置中或从配置中删除。您自己可以创建安装位置以对所安装的功能部件进行组织。各个软件提供者也可以在将所开发的插件添加到Eclipse安装文件中的时候创建安装位置。安装位置是文件系统中的一个单独位置。但是同一安装位置可包含在所安装的众多Eclipse(或基于Eclipse的产品)的多个配置中。
运行Update Manager的最小单元是功能部件。您可以为添加到现有配置中的那些功能部件添加新插件,并/或对这些功能部件中的已有插件。
6.5.1 安装位置的添加和删除
我们可以通过使用Product Configuration对话框或Update Manager的API命令来添加安装位置。安装位置是一个名为eclipse的目录。在该目录中含有一个名为.eclipseproduct的标记文件,另外还含有features子目录和plugins子目录。
若要使用Product Configuration对话框来添加安装位置,则先在菜单栏上选择Help | Software Updates | Manage Configuration…选项以打开Product Configuration对话框。在Product Configuration对话框中选择了Eclipse的配置根目录或某一已有安装位置后,您会在该对话框的右边窗格中看到Add an Extension Location选项。在使用该选项时,所查找的文件系统位置中必须包含一个有效的Eclipse安装位置。
您也可以使用Update Manager的API命令来添加和删除安装位置。请尝试使用下述命令添加一个安装位置,然后再删除该安装位置。
java.exe -cp startup.jar org.ec1ipse.core.launcher.Main
-data tempwork
-application org.eclipse.update.core.standaloneUpdate
-command addSite -from E:/Eclipse-3.0/Install-Extras/Tools
java.exe -cp startup.jar org.eclipse.core.launcher.Main
-data tempwork
-application org.eclipse.update.core.standaloneUpdate
-command removeSite -to E:/Eclipse-3.0/Install-Extras/Tools
在想将一组插件添加到所安装的Eclipse中的时候,您就可以使用该方法。
6.5.2 功能部件的禁用和启用
在Product Configuration对话框中,您可以选择所要操作的功能部件。根据所选功能部件的当前状态,您可发出禁用或启用请求。在想启用那些被禁用的功能部件的时候,您需要在Product Configuration对话框的工具栏上选择Show Disabled Features过滤器按钮。这样,您就可以查看到已安装的所有功能部件(包括当前被禁用的那些功能部件)。
通过使用Update Manager的API命令,您可以修改功能部件的状态。在下面这个例子中,我们通过使用Update Manager的API命令来禁用和启用所指定的安装位置中的一个功能部件。
java.exe -cp startup.jar org.eclipse.core.launcher.Main
-data tempwork
-application org.eclipse.update.core.standaloneUpdate
-command disable -featureId com.ibm.jdg2e.tools -version 3.0.0
-to E:/Eclipse-3.0/ConfigTest/fromUpdateSite
java.exe -cp startup.jar org.ec1ipse.core.1auncher.Main
-data tempwork
-application org.eclipse.update.core.standaloneUpdate
-command enable -featureId com.ibm.jdg2e.tools -version 3.0.0
-to E:/Ec1ipse-3.0/Install-Extras/Too1s
6.5.3 从更新站点安装功能部件
您可以使用Update Manager的安装向导来查找和安装新的功能部件。要打开该向导,请在Eclipse的菜单栏中选择Help | Software Updates | Find and Install…选项。要对所想安装的功能部件进行查找,请在执行Help | Software Updates | Find and Install…选项后所出现的对话框中选择Search for new features to install选项。这样,您将获得一个更新站点列表。在所列出的那些站点中,您可进行功能部件的搜索。
一开始,所列出的更新站点列表可能是空的。在这种情况下,您可以基于所给的http:URL或file:URL来手动添加更新站点。如果您(或所安装的功能部件)先前曾添加过更新站点,那么所添加的这些更新站点将显示在此更新站点列表中。在功能部件中也可以定义发现站点(discovery site)以指出那些可查找到新功能部件的站点位置。
您可浏览更新站点以查找可获得的功能部件,进而选出一组功能部件,然后再请求Update Manager将所选出的功能部件下载并安装到本地安装位置中。
除了用Update Manager的用户界面从更新站点安装功能部件外,我们也可以通过使用Update Manager的API命令从更新站点安装功能部件。下面的命令会从安装站点将一具体的功能部件安装到所指定的安装位置。
java.exe -cp startup.jar org.eclipse.core.launcher.Main
-data tempwork
-application org.ec1ipse.update.core.standaloneUpdate
-command install -featureId com.ibm.jdg2e.tools -version 3.0.0
-from http://jumpstart.raleigh.ibm.com/UpdateSite
-to E:/Ec1ipse-3.0/ConfigTest/fromUpdateSite
如果此时没有指定目标安装位置,那么该功能部件将被添加到Eclipse的基准位置中。如果在Eclipse的当前配置中存在某一功能部件,那么就可在该功能部件的定义中对其他功能部件进行标识以要求这些功能部件和自己安装在同一位置。这种功能部件之间的位置链接关系是在从含有collocation-affinity属性的更新站点进行功能部件安装时定义的。
6.5.4 将服务应用于功能部件
可对功能部件进行定义以使其知道在何处进行服务搜索。服务的发现和应用可通过Update Manager的安装向导或Update Manager的API命令来实现。
在使用Update Manager的安装向导来实现服务的发现和应用的时候,您所要做的只是在安装向导的对话框中选择Search for updates to currently installed features选项。这样,Update Manager就会对已配置的功能部件所知道的那些更新站点进行检查,以查找出适合当前配置的安装版本。
在使用Update Manager的API命令来实现服务的发现和应用的时候,请对所有的功能部件(或某一具体功能部件)定义一个如下所示的更新请求。
java.exe -cp startup.jar org.ec1ipse.core.1auncher.Main
-data tempwork
-app1 ication org.eclipse.update.core.standaloneUpdate
-command disable -featureId com.ibm.jdg2e.tools -version 3.0.0
-to E:/Ec1ipse-3.0/ConfigTest/fromUpdateSite
java.exe -cp startup.jar org.ec1ipse.core.1auncher.Main
-data tempwork
-application org.eclipse.update.core.standaloneUpdate
-command enable -featureId com.ibm.jdg2e.tools -version 3.0.0
-to E:/Ec1ipse-3.0/Install-Extras/Too1s
6.5.5 相关练习
如果想提高使用Update Manager进行配置管理的技巧,那么可以使用本书附带光盘中所提供的内容。光盘内容的组织方式允许您将光盘中的某一目录结构复制到自己的机器中,然后再对副本添加代码以进行扩展。光盘内容的组织方式还允许您将光盘直接作为一个安装位置来使用,您可从光盘中“下载”所需的功能部件,并将所“下载”的功能部件作为您的Eclipse或基于Eclipse的产品的一部分来进行配置。如果您是一个积极的插件开发人员,那么请阅读本书第13章“定义功能部件和产品”以了解更多相关信息。在练习9“使用功能部件部署产品”中,您甚至可以扮演功能部件开发者的角色。该练习中对使用Update Manager来添加扩展以及从更新站点安装功能部件进行了介绍。