Share via


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>

Vea también