OnError 元素 (MSBuild)

更新:2007 年 11 月

如果失败任务的 ContinueOnError 属性为 false,此元素将引起一个或多个目标执行。

<OnError ExecuteTargets="TargetName"
    Condition="'String A'=='String B'" />

属性和元素

以下几节描述了属性、子元素和父元素。

属性

属性

说明

Condition

可选的属性。

要计算的条件。有关更多信息,请参见 MSBuild 条件

ExecuteTargets

必选的属性。

任务失败时要执行的目标。用分号分隔多个目标。多个目标按指定顺序执行。

子元素

无。

父元素

元素

说明

Target

MSBuild 任务的容器元素。

备注

如果 Target 元素的某个任务失败,并且 ContinueOnError 属性设置为 false,那么 MSBuild 将执行 OnError 元素。任务失败后,将执行 ExecuteTargets 属性中指定的目标。如果目标中存在一个以上的 OnError 元素,那么当任务失败时,将按顺序执行 OnError 元素。有关更多信息,请参见 MSBuild 目标

示例

下面的代码执行 TaskOne 和 TaskTwo 任务。如果 TaskOne 失败,MSBuild 将计算 OnError 元素并执行 OtherTarget 目标。

<Target Name="ThisTarget">
    <TaskOne ContinueOnError="false">
    </TaskOne>
    <TaskTwo>
    </TaskTwo>
    <OnError ExecuteTargets="OtherTarget" />
</Target>

请参见

概念

MSBuild 项目文件架构引用

MSBuild 目标