Freigeben über


CallTarget-Aufgabe

Ruft die angegebenen Ziele in der Projektdatei ab.

Aufgabenparameter

In der folgenden Tabelle werden die Parameter der CallTarget -Aufgabe beschrieben.

Parameter Beschreibung
RunEachTargetSeparately Optionaler Boolean-Eingabeparameter.

Bei Festlegung auf true, wird die MSBuild-Engine einmal pro Ziel aufgerufen. Bei Festlegung auf false, wird die MSBuild-Engine einmal aufgerufen, um alle Ziele zu erstellen. Der Standardwert ist false.
TargetOutputs Optionaler ITaskItem[] -Ausgabeparameter.

Enthält die Ausgaben aller erstellten Ziele.
Targets Optionaler String[]-Parameter.

Gibt das Ziel oder die Ziele an, die erstellt werden sollen.
UseResultsCache Optionaler Boolean-Parameter.

Wenn true, wird das zwischengespeicherte Ergebnis zurückgegeben, sofern es vorhanden ist.

Hinweis Wenn eine MSBuild-Aufgabe ausgeführt wird, wird deren Ausgabe in einem Gültigkeitsbereich als eine Liste von Buildelementen zwischengespeichert (ProjectFileName, GlobalProperties)[TargetNames].

Hinweise

Wenn ein in Targets angegebenes Ziel fehlschlägt und RunEachTargetSeparatelytrue ist, fährt die Aufgabe mit dem Erstellen der verbleibenden Ziele fort.

Wenn Sie die Standardziele erstellen möchten, verwenden Sie die MSBuild-Aufgabe, und legen Sie den Projects-Parameter auf $(MSBuildProjectFile) fest.

Bei Verwendung von CallTarget wertet MSBuild das aufgerufene Ziel in einem neuen Bereich aus und nicht in dem Bereich, aus dem es aufgerufen wurde. Das bedeutet, dass alle Änderungen an Elementen und Eigenschaften im aufgerufenen Ziel für das aufrufende Ziel nicht sichtbar sind. Verwenden Sie zur Übergabe von Informationen an das aufrufende Ziel den Ausgabeparameter TargetOutputs.

Zusätzlich zu den oben aufgeführten Parametern erbt diese Aufgabe Parameter von der TaskExtension-Klasse, die selbst von der Task-Klasse erbt. Eine Liste mit diesen zusätzlichen Parametern und ihren Beschreibungen finden Sie unter TaskExtension-Basisklasse.

Beispiel

Über das folgende Beispiel wird TargetA in CallOtherTargets aufgerufen.

<Project DefaultTargets="CallOtherTargets"
    xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

    <Target Name="CallOtherTargets">
        <CallTarget Targets="TargetA"/>
    </Target>

    <Target Name="TargetA">
        <Message Text="Building TargetA..." />
    </Target>

</Project>

Weitere Informationen