OnError 元素 (MSBuild)

如果失敗工作的 ContinueOnError 屬性是 false,則會執行一或多個目標。

<Project><Target><OnError>

語法

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

屬性和元素

下列章節說明屬性、子元素和父元素。

屬性

屬性 描述
Condition 選用屬性。

要評估的條件。 如需詳細資訊,請參閱條件
ExecuteTargets 必要屬性。

工作失敗時要執行的目標。 以分號分隔多個目標。 多個目標會以指定的順序執行。

子元素

無。

父元素

元素 描述
Target MSBuild 工作的 Container 元素。

備註

如果其中一個 Target 元素的工作失敗,且 ContinueOnError 屬性設為 ErrorAndStop (或 false),MSBuild 便會執行 OnError 元素。 工作失敗時,便會執行 ExecuteTargets 屬性指定的目標。 如果目標中有多個 OnError 元素,則工作失敗時會依序執行 OnError 元素。

如需 ContinueOnError 屬性的相關資訊,請參閱 Task 元素 (MSBuild)。 如需目標的詳細資訊,請參閱目標

範例

下列程式碼會執行 TaskOneTaskTwo 工作。 如果 TaskOne 失敗,MSBuild 會評估 OnError 元素,並執行 OtherTarget 目標。

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

另請參閱