Share via


Project 元素 (MSBuild)

MSBuild 项目文件必需的根元素。

<Project InitialTargets="TargetA;TargetB"
         DefaultTargets="TargetC;TargetD"
         ToolsVersion=<version number>
         xmlns="https://schemas.microsoft.com/developer/msbuild/2003">
    <Choose>... </Choose>
    <PropertyGroup>... </PropertyGroup>
    <ItemGroup>... </ItemGroup>
    <Target>... </Target>
    <UsingTask.../>
    <ProjectExtensions>... </ProjectExtensions>
    <Import... />
</Project>

特性和元素

以下几节描述了属性、子元素和父元素。

特性

特性

说明

DefaultTargets

可选特性。

当未指定目标时,将成为生成的入口点的默认目标。 多个目标之间用分号 (;) 分隔。

如果在 DefaultTargets 特性或 MSBuild 命令行中未指定默认目标,则在计算了 Import 元素后,该引擎将执行项目文件中的第一个目标。

InitialTargets

可选特性。

要在 DefaultTargets 特性或命令行指定的目标之前运行的一个或多个初始目标。 多个目标之间用分号 (;) 分隔。

ToolsVersion

可选特性。

工具集 MSBuild 的版本用来确定 $(MSBuildBinPath) 和 $(MSBuildToolsPath) 的值。

Xmlns

必选特性。

xmlns 特性的值必须为“https://schemas.microsoft.com/developer/msbuild/2003”。

子元素

元素

说明

Choose

可选元素。

通过计算子元素来选择一组要计算的 ItemGroup 元素和/或 PropertyGroup 元素。

Import

可选。

允许一个项目文件导入另一个项目文件。 一个项目中可能有零个或零个以上的 Import 元素。

ItemGroup

可选。

多个不同项的分组元素。 项是使用 Item 元素指定的。 一个项目中可能有零个或零个以上的 ItemGroup 元素。

ProjectExtensions

可选。

提供了一种在 MSBuild 项目文件中保留非 MSBuild 信息的方法。 一个项目中可能有零个或一个 ProjectExtensions 元素。

PropertyGroup

可选。

多个不同属性的分组元素。 属性是使用 Property 元素指定的。 一个项目中可能有零个或零个以上的 PropertyGroup 元素。

Target

可选。

包含 MSBuild 的一组任务,这组任务应按顺序执行。 任务是使用 Task 元素指定的。 一个项目中可能有零个或零个以上的 Target 元素。

UsingTask

可选。

提供了一种在 MSBuild 中注册任务的方法。 一个项目中可能有零个或零个以上的 UsingTask 元素。

父元素

无。

请参见

任务

如何:指定首先生成的目标

参考

MSBuild 命令行参考

概念

MSBuild 项目文件架构引用

其他资源

!!!测试开始[MSBuild Overview]测试结束!!!