Spécifier la cible MSBuild à générer en premier
Les fichiers projet MSBuild peuvent contenir une ou plusieurs cibles qui définissent la façon dont le projet est généré. MSBuild génère la première cible qu’elle trouve et toutes les dépendances, sauf :
- L’élément
Project
contient un attributInitialTargets
. - L’élément
Project
contient un attributDefaultTargets
. - La commande MSBuild a un commutateur
-target
qui spécifie une cible.
Utiliser l’attribut InitialTargets
L’attribut InitialTargets
de l’élément Project
spécifie la cible initiale qui s’exécute en premier. Il remplace les cibles que vous spécifiez avec MSBuild sur la ligne de commande ou dans l’attribut DefaultTargets
de l’élément Project
.
Spécifier une cible initiale unique
Spécifiez la cible par défaut dans l’attribut InitialTargets
de l’élément Project
. Par exemple:
<Project InitialTargets="Clean">
Spécifier plusieurs cibles initiales
Vous pouvez spécifier plusieurs cibles initiales dans l’attribut InitialTargets
de l’élément Project
. Répertoriez les cibles dans l’ordre et utilisez un point-virgule pour séparer chaque cible. Les cibles de la liste sont exécutées séquentiellement.
Par exemple, pour exécuter la cible Clean
, puis la cible Compile
, entrez :
<Project InitialTargets="Clean;Compile">
Utiliser l’attribut DefaultTargets
L’attribut DefaultTargets
de l’élément Project
spécifie la cible ou les cibles générées si une cible n’est pas spécifiée explicitement sur la ligne de commande.
Si les cibles sont spécifiées dans les attributs InitialTargets
et DefaultTargets
de l’élément Project
et qu’aucune cible n’est spécifiée sur la ligne de commande, MSBuild exécute les cibles spécifiées dans l’attribut InitialTargets
suivi des cibles spécifiées dans l’attribut DefaultTargets
.
Spécifier une cible par défaut unique
Spécifiez la cible par défaut dans l’attribut DefaultTargets
de l’élément Project
. Par exemple:
<Project DefaultTargets="Compile">`
Spécifier plusieurs cibles par défaut
Vous pouvez spécifier plusieurs cibles par défaut dans l’attribut DefaultTargets
de l’élément Project
. Répertoriez les cibles par défaut dans l’ordre et utilisez un point-virgule pour séparer chaque cible. Les cibles de la liste sont exécutées séquentiellement.
Par exemple, pour exécuter la cible Clean
, puis la cible Compile
, entrez :
<Project DefaultTargets="Clean;Compile">
Utilisez le commutateur -target pour remplacer la cible par défaut
Si une cible par défaut n’est pas définie dans le fichier projet ou si vous ne souhaitez pas utiliser la cible par défaut définie, vous pouvez utiliser le commutateur de ligne de commande -target
pour spécifier une autre cible. La cible ou les cibles spécifiées avec le commutateur -target
sont exécutées au lieu des cibles spécifiées par l’attribut DefaultTargets
de l’élément Project
. Les cibles spécifiées dans l’attribut InitialTargets
s’exécutent toujours en premier.
Remplacer la cible par défaut par une seule cible
Spécifiez la cible à utiliser comme première cible à l’aide du commutateur de ligne de commande -target
avec un signe deux-points (:) et le nom de la cible. Par exemple:
msbuild file.proj -target:Clean
Remplacer la cible par défaut par plusieurs cibles
Spécifiez une liste de cibles à utiliser comme premières cibles et séparez-les par des points-virgules avec le commutateur de ligne de commande -target
. Par exemple:
msbuild <file name>.proj -t:Clean;Compile