构建功能部件

“PDE 构建”提供了用于自动构建功能部件的基础结构。通过对“PDE 构建”中提供的模板 build.properties 进行少量修改,可以完成此类构建所要求进行的大部分设置工作。下一节着重描述设置简单的构建。这里,我们假定所构建的功能部件中引用的所有插件和功能部件(既包括要构建的插件和功能部件也包括预先构建的插件和功能部件)都已在本地磁盘上。

基本设置

在设置构建时,第一步是创建用于执行构建的目录。此目录称为构建目录,它将包含要构建的插件和功能部件以及所生成的所有工件。接着,请将插件和功能部件分别复制到“plugins”和“features”子目录中。功能部件文件夹应该包含所构建的功能部件。

在设置构建时,第二步是将模板 build.properties 文件从 org.eclipse.pde.build/templates/headless-build 复制到将成为构建配置目录的新目录中(此目录也称为配置目录)。对复制的 build.properties 文件进行编辑并设置下列属性:

控制要构建的内容:allElements.xml

请将 allElements.xml 文件从 org.eclipse.pde.build/templates/headless-build 复制到配置目录。此文件将所要构建的功能部件告知 PDE。此文件包含两类目标:allElementsDelegator(它指定所要构建的功能部件)以及组装目标(将调用这些目标以组装各个配置)。对于名为 org.foo.Feature 的功能部件来说,allElementsDelegator 是:
 	<target name="allElementsDelegator">
<ant antfile="${genericTargets}" target="${target}">
<property name="type" value="feature" />
<property name="id" value="org.foo.Feature" />
</ant>
</target>
组装目标允许您控制每一个配置的最终归档名。所构建的每个配置都应该有一个目标。例如,在为 Windows 构建 org.foo.Feature 时(当 configs 设置为 win32、win32 或 x86 时),应该指定以下目标:
<!--Target for assembling  os=win32, ws=win32, arch=x86 -->
<target name="assemble.org.foo.Feature.win32.win32.x86">
<ant antfile="${assembleScriptName}" dir="${buildDirectory}/">
</target>
在构建与平台无关的配置时(未设置 configs,或者 configs 设置为 *,*,*),应该指定类似于以下的目标:
<!--The platform independent assemble target-->
<target name="assemble.org.foo.Feature">
<ant antfile="${assembleScriptName}" dir="${buildDirectory}"/>
</target>

运行构建

要运行构建,请使用 org.elipse.ant.core.antRunner 应用程序。在使用此应用程序来调用 Eclipse 以执行构建时,需要在命令行上设置两个参数:
使用以下命令来运行 antRunner 应用程序:
java -jar <eclipseInstall>/startup.jar -application org.eclipse.ant.core.antRunner -buildfile <<eclipseInstall>/plugins/org.eclipse.pde.build_<version>/scripts/build.xml> -Dbuilder=<构建配置文件夹的路径>
完成构建后,结果包含在构建目录中名为 I.TestBuild(可以通过设置 buildLabel 属性来配置此名称)的文件夹中。

高级方案

如果要对构建进行进一步的定制,例如访存资源库,请参阅高级 PDE 构建主题以了解更多信息。