指定首先生成的目标
项目文件可以包含一个或多个用于定义如何生成项目的 Target
元素。 Microsoft 生成引擎 (MSBuild) 生成它找到的第一个目标以及所有依赖项,除非项目文件包含 DefaultTargets
属性、InitialTargets
属性,或目标是在命令行中使用 -target 开关进行指定。
使用 InitialTargets 属性
Project
元素的 InitialTargets
属性指定将首先运行的目标,即使在命令行或 DefaultTargets
属性中指定了目标。
指定一个初始目标
在
Project
元素的InitialTargets
属性中指定默认目标。 例如:<Project InitialTargets="Clean">
可以通过按顺序列出目标并使用分号来分隔每个目标,在
InitialTargets
属性中指定多个初始目标。 列表中的目标将按顺序运行。
指定多个初始目标
在
Project
元素的InitialTargets
属性中列出初始目标,用分号分隔。 例如,若要运行Clean
目标,然后运行Compile
目标,则键入:<Project InitialTargets="Clean;Compile">
使用 DefaultTargets 属性
Project
元素的 DefaultTargets
属性指定如果未在命令行上显式指定目标,将生成哪个或哪些目标。 如果在 InitialTargets
和 DefaultTargets
属性中均指定了目标,而未在命令行上指定任何目标,则 MSBuild 先运行在 InitialTargets
属性中指定的目标,然后再运行在 DefaultTargets
属性中指定的目标。
指定一个默认目标
在
Project
元素的DefaultTargets
属性中指定默认目标。 例如:<Project DefaultTargets="Compile">
可以通过按顺序列出目标并使用分号来分隔每个目标,在
DefaultTargets
属性中指定多个默认目标。 列表中的目标将按顺序运行。
指定多个默认目标
在
Project
元素的DefaultTargets
属性中列出默认目标,用分号分隔。 例如,若要运行Clean
目标,然后运行Compile
目标,则键入:<Project DefaultTargets="Clean;Compile">
使用 -target 开关
如果未在项目文件中定义默认目标,或不希望使用默认目标,可使用命令行开关 -target 指定其他目标。 运行的是使用 -target 开关指定的一个或多个目标,而不是 DefaultTargets
属性指定的目标。 InitialTargets
属性中指定的目标将始终首先运行。
首先使用非默认目标的目标
使用 -target 命令行开关将目标指定为第一个目标。 例如:
msbuild file.proj -target:Clean
首先使用非默认目标的多个目标
使用 -target 命令行开关列出目标(由分号或逗号分隔)。 例如:
msbuild <file name>.proj -t:Clean;Compile