CallTarget (tarea)
Invoca los destinos especificados en el archivo del proyecto.
Parámetros de tareas
En la siguiente tabla se describen los parámetros de la tarea CallTarget
.
Parámetro | Descripción |
---|---|
RunEachTargetSeparately |
Parámetro de entrada Boolean opcional.Si es true , se llama al motor de MSBuild una vez por destino. Si es false , se llama al motor de MSBuild una vez para compilar todos los destinos. El valor predeterminado es false . |
TargetOutputs |
Parámetro de salida ITaskItem[] opcional.Contiene las salidas de todos los destinos compilados. |
Targets |
Parámetro String[] opcional.Especifica los destinos que se compilarán. |
UseResultsCache |
Parámetro Boolean opcional.Si es true , se devuelve el resultado almacenado en caché, si está presente.Nota Cuando se ejecuta una tarea MSBuild, su salida se almacena en caché en un ámbito (ProjectFileName, GlobalProperties)[TargetNames] como una lista de elementos de compilación. |
Observaciones
Si se produce un error en un destino especificado en Targets
y RunEachTargetSeparately
es true
, la tarea sigue compilando los destinos restantes.
Si quiere compilar los destinos predeterminados, use MSBuild (Tarea) y establezca el parámetro Projects
igual que $(MSBuildProjectFile)
.
Cuando se usa CallTarget
, MSBuild evalúa el destino al que se llama en un nuevo ámbito, en lugar de en el mismo ámbito desde el que se llama. Esto significa que los cambios en los elementos y propiedades en el destino al que se llama no son visibles para el destino desde el que se llama. Para pasar información al destino desde el que se llama, use el parámetro de salida TargetOutputs
.
Además de los parámetros mencionados anteriormente, esta tarea hereda los parámetros de la clase TaskExtension, que a su vez hereda de la clase Task. Para obtener una lista de estos parámetros adicionales y sus descripciones, consulte TaskExtension base class.
Ejemplo
En el ejemplo siguiente se llama a TargetA
desde dentro de CallOtherTargets
.
<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>