首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 开源 FAQ 第二书店 博文视点 程序员
频道: 研发 数据库 中间件 信息化 视频 .NET Java 游戏 移动 服务: 人才 外包 培训
    图书品种:235680
       
热门搜索: ASP.NET Ajax Spring Hibernate Java

6.6  配置的管理

在启动或关闭Eclipse的过程中,Update Manager会执行配置的发现、创建和修改操作。在理解了Eclipse是如何实现配置处理之后,您可以更好地对Eclipse进行配置管理。

6.6.1  理解默认配置处理

Eclipse对默认配置处理提供了支持。默认配置处理为您完成了Eclipse所需的基本配置,它可以满足绝大多数情况下的Eclipse使用。在启动Eclipse后,它会查找configuration\config.ini文件以使自己继续运行,并且还会创建一个配置。在该配置中含有eclipse平台基位置以及eclipse\links目录中链接文件定义的全部安装路径。下面所给出的是为带有链接文件的Eclipse安装实例创建的默认配置。在链接文件中对Eclipse插件范例进行了指定。

<?xml version="1.0" encoding="UTF-8"?>

<!--Created on Sat Jun 26 16:17:52 EDT 2004-->

<config date="1088281072284" transient="fa1se" version="3.0">

<site enab1ed="true"

1inkfi1e=

"e:/Eclipse-3.0/Install_Test/ec1ipse/1inks/examples.1ink"

policy="USER-EXCLUDE" updateable="true"

url="fi1e:/E:/Eclipse-3.0/Instal1_Test/examp1es/eclipse/">

<feature id="org.eclipse.sdk.examples"

url="features/org.eclipse.sdk.examp1es_3.0.0/"

version="3.0.0"/>

</site>

<site enab1ed="true" po1icy="USER-EXCLUDE"

updateable="true" ur1="p1atform:/base/">

<feature app1ication="org.eclipse.ui.ide.workbench"

id="org.eclipse.platform" primary="true"

url="features/org.edipse.p1atform_3.0.0/"

versions"3.0.0"/>

<feature id="org.eclipse.platform.source"

ur1="features/org.eclipse.platform.source_3.0.0/"

version="3.0.0"/>

<feature id="org.eclipse.jdt"

ur1="features/org.ec1ipse.jdt_3.0.0/" version="3.0.0"/>

<feature id="org.ec1ipse.jdt.source"

ur1="features/org.ec1ipse.jdt.source_3.0.0/"

version="3.0.0"/>

<feature id="org.ec1ipse.pde"

ur1="features/org.ec1ipse.pde_3.0.0/" version="3.0.0"/>

<feature id="org.ec1ipse.sdk"

ur1="features/org.ec1ipse.sdk_3.0.0/" version="3.0.0"/>

<feature id="org.ec1ipse.pde.source"

ur1="features/org.ec1ipse.pde.source_3.0.0/"

version="3.0.0"/>

</site>

</config>

通过使用Update Manager的用户界面或Update Manager的API命令,我们可以对上述配置进行管理。配置更改是在Eclipse安装者直接控制之下的,在该范例中,我们假定负责更改Eclipse配置的只有一个人。通过配置管理,我们除了可以添加新安装路径之外,还可以禁用或启用功能部件,并可以应用特定服务。在Update Manager标准处理之外是没有任何限制的,但您不可以禁用那些会导致配置无效的安装位置或功能部件。这是Eclipse或基于Eclipse产品的绝大多数使用者必须遵循的工作方式。

将配置清理为其初始值是可能的。要恢复初始配置,您需要删除configuration目录中除了config.ini文件之外的所有内容。该操作不会对已有工作空间造成损害。如果不想丢失最后所用工作空间的列表,则不要删除org.eclipse.ui.ide目录。如果想确保可以返回到现有配置,则首先为org.eclipse.update\platform.xml文件作一个备份。

6.6.2  使用备用配置

备用配置的使用并不难;您只需在启动Eclipse时加上参数-configuration即可。该操作会在指定位置处创建一个配置。依赖于所安装的Eclipse的当前状态,该操作所创建的配置既可能是基于共享配置的,也可能是一个独立配置。

如果在使用-configuration参数创建备用配置时没有任何默认配置可以使用,那么与前面一节所讨论的默认配置相比,您所创建的配置看起来和使用起来在本质上是和备用配置相似的,只是它是被物理写到新位置中而已。

如果存在默认配置,那么其工作过程就不同了。在首次创建备用配置时,如果存在默认配置,那么所创建的备用配置是基于该默认配置的。如果看一下platform.xml文件,您就会说这种情况下的备用配置创建确实是基于该默认配置的。在存在默认配置的情况下使用如下参数来启动Eclipse时,会创建备用配置。

eclipse –configuration e:\altSharedConfig

请将altSharedConfig\platform.xml文件中的内容(如下代码所示)与前面所给出的默认配置进行比较(这里假定Eclipse的安装位置为e:\Eclipse-3.0\Install_Test\eclipse)。

<?xml version="1.0" encoding="UTF-8"?>

<!--Created on Sat Jun 26 16:28:32 EDT 2004-->

<config date="1088281712284"

shared_ur=

"file:/e:/Eclipse-3.0/Install_Test/eclipse/configuration

/org.eclipse.update/platform.xml" transient="fa1se"

version="3.0"/>

在Eclipse中,默认配置被作为共享配置。而备用配置会引用默认配置。如果您使用如下所示的命令行参数来启动Eclipse并要求列出备用配置中的功能部件,则会显示出如下所示的功能部件列表。

e:\eclipse-3.0\jre\bin\java.exe -cp startup.jar

org.ec1ipse.core.launcher.Main -data tempwork

-application org.ec1ipse.update.core.standaloneUpdate

-configuration e:\a1tSharedConfig -command 1istFeatures

Site: fi1e:/E:/Eclipse-3.0/Insta11_Test/examp1es/eclipse/

Feature org.ec1ipse.sdk.examples 3.0.0 enabled

Site: fi1e:/e:/Eclipse-3.0/Insta11_Test/eclipse/

Feature org.ec1ipse.jdt.source 3.0.0 enabled

Feature org.eclipse.platform 3.0.0 enabled

Feature org.eclipse.jdt 3.0.0 enabled

Feature org.ec1ipse.pde 3.0.0 enabled

Feature org.ec1ipse.pde.source 3.0.0 enabled

Feature org.eclipse.platform.source 3.0.0 enabled

Feature org.eclipse.sdk 3.0.0 enabled

Command completed successfully.

所以,您实际上配置的是默认配置中的安装位置以及它们各自的功能部件。更重要的是,对这些共享安装位置来说,您可以执行的管理操作非常少。也就是说,通过使用备用配置,您可添加新的安装位置,并可改变所添加安装位置中的功能部件状态。但是对于从共享配置中获得的那些软件实体来说,您是不可以对它们执行禁用、启用、服务提供或其他操作的。相反,对于发生在共享默认配置上的那些改动,在您将共享配置作为备用配置的一部分,并在下次启动Eclipse时使用备用配置的情况下,您是无法在备用配置中取消发生在共享配置中的这些改动的。事实上,这可能就是您的目的。乍一听起来,它就好像您可以将共享配置中的功能部件“推送”到备用配置中。这样做的好处依赖于您的目标。下面所给出的是一些范例:

●       以默认配置作为基础。您可以将默认配置保存为原始状态,并只在基于共享配置所获得的备用配置中添加改动。

●       从来都不建立默认配置。这样,您可创建任意数量的备用配置。这些备用配置考虑到了对安装位置、功能部件以及应用服务程序的完全控制。

●       为Eclipse的其他使用者共享一个只读的Eclipse安装实例。在这种情况下,通常是创建一个备用配置,但是所创建的备用配置必须接受共享配置中的那些安装位置和功能部件。在备用配置中,您还可以添加新功能部件,以及进行应用维护。通过这种方法,您就可以将代码提交到普通用户社区。

正如您所看到的,管理配置的策略非常多。当然,如果您接受默认配置,那么为您创建的配置是恰好可以凑合着使用的。重要的是,您应该意识到,在使用-configuration参数来指定备用配置时,Eclipse是如何对已存在的默认配置进行处理的。如果管理恰当,您本质上可以创建一个强制性默认配置,并在中心位置处对该默认配置进行管理。这种方法可用于单独的系统或共享文件系统资源中使用的Eclipse安装实例。

6.6.3  在工作空间和配置之间强制建立一对一关系

如果熟悉Eclipse 2.x,那您就知道每个工作空间都对它自己的安装位置、功能部件以及启用信息等配置进行了保存。偶尔,这被认为是一个问题。常见原因之一是:您可使用具有惟一安装位置的Update Manager来添加新的代码(最佳实践),但是在用其他工作空间启动Eclipse的情况下,最新安装的代码却是无法看到的。由于这个以及一些其他原因,对配置的管理超出了一个工作空间的范围,一个配置会横跨多个工作空间。

尽管在工作空间和配置之间强制建立一对一关系会改变默认的Eclipse配置管理情况。但是只要您愿意,工作空间和配置之间的这种关系并不会对最终结果(该结果与执行前面的配置管理方法的结果相似)造成妨碍。让我们假设您的目标是为每个工作空间都提供惟一的配置。本质上,这又返回到了老路上。为了实现上述目标,您可采用如下这种简单策略。首先,请确认在您的Eclipse中没有任何默认配置;如果存在默认配置,则删除configuration目录中除config.ini文件之外的全部内容,这样就可删除默认配置(如果您做事比较谨慎,则可以先对configuration目录作一个备份)。然后,请在启动Eclipse时使用-data参数和-configuration参数,并为工作空间和相关配置指定一个惟一位置。如下面的两行命令所示,通过使用这种方法来启动Eclipse,每个工作空间都有一个惟一的配置,而且这是一种对文件系统中的内容进行有组织的管理的简单方法。

eclipse –data d:\ws\javaWork –configuration d:\ws\javaWork

eclipse –data d:\ws\pluginWork –configuration d:\ws\pluginWork

这将导致文件系统的组织结构如图6-4所示。

在使用这些惟一配置时,为了能拥有完全的管理自由,您需要首先确保在Eclipse中没有默认配置。

图6-4  链接工作空间和配置的策略

查看所有评论(0)条】

最近评论



正在载入评论列表...
热点评论