INTSourceChangelist:3356804 Availability:Public Title:BuildGraph 脚本元素 Crumbs: Description:学习 BuildGraph 的元素。 version:4.13 parent:Programming/Development/BuildGraph type:Reference tags:Programming tags:BuildGraph [VAR:TopicCompact] [OBJECT:TopicCompact] [PARAM:image] ![%Programming/Development/BuildGraph/ScriptAnatomy/Elements%](elements_topic.png) [/PARAM] [PARAM:icon] ![](%ROOT%/reference_icon.png)(convert:false) [/PARAM] [PARAM:title] %Programming/Development/BuildGraph/ScriptAnatomy/Elements:title% [/PARAM] [PARAM:description] %Programming/Development/BuildGraph/ScriptAnatomy/Elements:description% [/PARAM] [PARAM:path] [RELATIVE:Programming/Development/BuildGraph/ScriptAnatomy/Elements] [/PARAM] [/OBJECT] [/VAR] [TOC(start:1 end:2)] [EXCERPT:BuildGraphScriptElements] BuildGraph 脚本以 XML 编写。此文档包含 BuildGraph 脚本中的数据类型以及其整体结构。 (#Elements) ## 元素 元素描述它们包含的数据,使它们成为 BuildGraph 脚本的基础构建块之一。下表包含作为元数据提供的项目,将在构建系统上运行时导出。在本地执行任务时它们不会被 BuildGraph 直接使用,将以 `[META]` 标记。 (#GraphStructure) ## 图表结构 一个 BuildGraph 脚本通常由以下元素定义: * `` * `` * `` * `` (#Node) ### 节点 `` 是 BuildGraph 中执行的最小单位,拥有一套输入和输出。每个 `` 由按顺序执行的一个任务序列组成。 | 属性 | 类型 | 是否必需?| 描述 | | ---------------- | ------------ | ------------ | ---------------- | | Name | 命名 | 必需 | 节点名。| | Requires | 目标列表 | 可选 | 由此节点需要执行的其他节点生成的节点列表、聚合,或标记文件集,由分号间隔。| | Produces | 标记列表 | 可选 | 此节点向其他节点提供的标记文件集,由分号间隔。| | After | 目标列表 | 可选 | 在此节点之前运行的节点列表,如他们为当前目标的部分(如非当前目标的部分,则无视)。由分号间隔。| | NotifyOnWarnings | 布尔 | 可选 | 如为 false,此节点将不生成警告通知。只由构建系统使用。默认为 `true`。`[META]` | | If | 条件 | 可选 | 将被求值的条件。元素将被无视,除非条件求值为 `true`。| (#Aggregate) ### 聚合 `` 声明一个命名聚合,可用作一套其他节点(或生成的标签集)的同义词。 | 属性 | 类型 | 是否必需?| 描述 | | | ---------------- | ------------ | ------------ | -------------- | | Name | 命名 | 必需 | 聚合名。| | Requires | 目标列表 | 必需 | 此聚合的依赖性列表。可能是节点、标记的文件集,或代理群组。| | If | 条件 | 可选 | 将被求值的条件。元素将被无视,除非条件求值为 `true`。| (#Agent) ### 代理 `` 定义按次序执行的节点上代理的要求(无需清理中间目录)。本地构建时将无视 `` 要求,但必须被指定。 | 属性 | 类型 | 是否必需?| 描述 | | ---------------- | --------------- | ------------ | ----------- | | Name | 命名 | 必需 | 群组名。| | Type | 辨识符列表 | 可选 | 运行的代理类型。此字符串的含义由 host 构建系统所推断;它不含任何本质含义。`[META]` | | If | 条件 | 可选 | 将被求值的条件。元素将被无视,除非条件求值为 `true`。| (#Trigger) ### 触发 `` 的作用是图表部分(该图表只在显式用户介入后执行)的一个容器。如需在触发后执行节点,将 `-Trigger=` 传至命令行。 | 属性 | 类型 | 是否必需?| 描述 | | ---------------- | --------------- | ------------ | ------------------ | | Name | 命名 | 必需 | 触发名。| | If | 条件 | 可选 | 将被求值的条件。元素将被无视,除非条件求值为 `true`。| (#PropertyManipulation) ## 属性操作 BuildGraph 属性可通过以下元素进行修改: * `` * `