msbuild
Ordre d'exécution de la cible
Recherche…
Remarques
De MSDN: Ordre de construction cible
Détermination de l'ordre de construction cible
MSBuild détermine l'ordre de génération cible comme suit:
- Les cibles InitialTargets sont exécutées.
- Les cibles spécifiées sur la ligne de commande par le commutateur / target sont exécutées. Si vous ne spécifiez aucune cible sur la ligne de commande, les cibles DefaultTargets sont exécutées. Si aucun n'est présent, la première cible rencontrée est exécutée.
- L'attribut Condition de la cible est évalué. Si l'attribut Condition est présent et a la valeur false, la cible n'est pas exécutée et n'a plus d'effet sur la génération.
- Avant qu'une cible soit exécutée, ses cibles DependsOnTargets sont exécutées.
- Avant qu'une cible soit exécutée, toute cible qui la répertorie dans un attribut BeforeTargets est exécutée.
- Avant qu'une cible soit exécutée, ses attributs Input et Outputs sont comparés. Si MSBuild détermine que tous les fichiers de sortie sont obsolètes par rapport au ou aux fichiers d'entrée correspondants, MSBuild exécute la cible. Sinon, MSBuild ignore la cible.
- Une fois qu'une cible est exécutée ou ignorée, toute cible qui la répertorie dans un attribut AfterTargets est exécutée.
DependsOnTargets
Définissez une séquence de cibles ( Target1 , puis Target2 ) à exécuter avant Target3 . Notez qu'une requête d'exécution pour Target3 est requise pour que Target1 et Target2 soient exécutés.
<Target Name="Target3" DependsOnTargets="Target1;Target2">
</Target>
<Target Name="Target2">
</Target>
<Target Name="Target1">
</Target>
AfterTargets
Définissez une cible ( Target1 ) pour laquelle une demande d'exécution entraînera l'exécution Target2 de Target2 .
<Target Name="Target2" AfterTargets="Target1">
</Target>
<Target Name="Target1">
</Target>
AvantTargets
Définissez une cible ( Target2 ) pour laquelle une demande d'exécution entraînera l'exécution préalable de Target1 .
<Target Name="Target2">
</Target>
<Target Name="Target1" BeforeTargets="Target2">
</Target>
Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow