Task 元素 (MSBuild)
更新:2007 年 11 月
创建并执行 MSBuild 任务的一个实例。元素名称由正在创建的任务的名称决定。
<Task Parameter1="Value1"... ParameterN="ValueN"
ContinueOnError="true/false"
Condition="'String A' == 'String B'" >
<Output... />
</Task>
属性和元素
以下几节描述了属性、子元素和父元素。
属性
属性 |
说明 |
---|---|
Condition |
可选的属性。要计算的条件。有关更多信息,请参见 MSBuild 条件。 |
ContinueOnError |
可选的属性。Boolean 属性,如果未指定,将默认为 false。如果 ContinueOnError 为 false,那么当某个任务失败时,将不会执行 Target 元素中的其余任务,并且整个 Target 元素将被认为失败。 如果此属性为 true,那么即使当前任务失败,Target 元素中的后续任务仍将继续执行,来自该任务的所有错误都被视为警告。 |
Parameter |
如果任务类包含一个或多个带有 [Required] 属性 (attribute) 标记的属性 (property),则此属性是必选的。 用户定义的任务参数,包含作为它的值的参数值。Task 元素中可以有任意数目的参数,其每个属性 (attribute) 均映射到任务类中的一个 .NET 属性 (property)。 |
子元素
元素 |
说明 |
---|---|
将来自任务的输出存储在项目文件中。一个任务中可能有零个或零个以上的 Output 元素。 |
父元素
元素 |
说明 |
---|---|
MSBuild 任务的容器元素。 |
备注
MSBuild 项目文件中的 Task 元素创建任务的一个实例,设置它的属性,然后执行该任务。Output 元素将输出参数存储在要用在项目文件的其他位置的属性或项中。
如果任务的父 Target 元素中存在任何 OnError 元素,则当任务失败并且 ContinueOnError 的值为 false 时,仍会计算这些元素。有关任务的更多信息,请参见 MSBuild 任务。
示例
下面的代码示例创建 Csc task 类的一个实例,设置六个属性,然后执行该任务。执行后,对象的 OutputAssembly 属性的值将放入名为 FinalAssemblyName 的项列表中。
<Target Name="Compile" DependsOnTarget="Resources" >
<Csc Sources="@(CSFile)"
TargetType="library"
Resources="@(CompiledResources)"
EmitDebugInformation="$(includeDebugInformation)"
References="@(Reference)"
DebugType="$(debuggingType)" >
<Output TaskParameter="OutputAssembly"
ItemName="FinalAssemblyName" />
</Csc>
</Target>