共用方式為


Project 項目 (MSBuild)

更新:2007 年 11 月

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>

屬性和項目

下列小節將說明屬性 (Attribute)、子項目和父項目。

屬性

屬性

描述

DefaultTargets

選擇性屬性。

如果沒有指定目標 (Target) 的話,則將成為組建 (Build) 之進入點 (Entry Point) 的預設目標。若有多個目標,則會由分號 (;) 分隔。

如果沒有在 DefaultTargets 屬性或 MSBuild 命令列指定預設目標,則在評估過 Import 項目之後,引擎便會執行專案檔中的第一個目標。

InitialTargets

選擇性屬性。

DefaultTargets 屬性中或命令列上指定目標之前,要執行的初始目標。若有多個目標,則會由分號 (;) 分隔。

ToolsVersion

選擇性 (Optional) 屬性。

MSBuild 用來判斷 $(MSBuildBinPath) 和 $(MSBuildToolsPath) 這兩個值的工具組版本。

Xmlns

必要的屬性。

xmlns 屬性必須具有 "https://schemas.microsoft.com/developer/msbuild/2003" 的值。

子項目

項目

描述

Choose

選擇性項目。

評估子項目以選擇一組要評估的 ItemGroup 項目和 (或) PropertyGroup 項目。

Import

選擇性項目。

可讓專案檔匯入另一個專案檔。專案中可能有零個或多個 Import 項目。

ItemGroup

選擇性項目。

個別項目 (Item) 的群組項目 (Element)。這些項目 (Item) 是使用 Item 項目 (Element) 指定的。專案中可能有零個或多個 ItemGroup 項目。

ProjectExtensions

選擇性項目。

提供保存 MSBuild 專案檔中非 MSBuild 資訊的方法。專案中可能有零或一個 ProjectExtensions 項目。

PropertyGroup

選擇性項目。

個別屬性 (Property) 的群組項目。這些屬性是使用 Property 項目指定的。專案中可能有零個或多個 PropertyGroup 項目。

Target

選擇性項目。

包含 MSBuild 會依序執行的一組工作。這些工作是使用 Task 項目指定的。專案中可能有零個或多個 Target 項目。

UsingTask

選擇性項目。

提供在 MSBuild 中註冊工作的方法。專案中可能有零個或多個 UsingTask 項目。

父項目

無。

請參閱

工作

HOW TO:指定要優先建置的目標

概念

MSBuild 專案檔案結構描述參考

MSBuild 概觀

參考

MSBuild 命令列參考