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>

属性と要素

以降のセクションでは、属性、子要素、および親要素について説明します。

属性

属性

説明

DefaultTargets

省略可能属性

ターゲットを指定しなかった場合に、ビルドのエントリ ポイントとなる既定のターゲットです。ターゲットを複数指定する場合には、セミコロン (;) で区切ります。

既定のターゲットを DefaultTargets 属性と MSBuild コマンド ラインのいずれにも指定しなかった場合には、プロジェクト ファイル内で Import 要素を評価した後の最初のターゲットが実行されます。

InitialTargets

省略可能属性

DefaultTargets 属性またはコマンド ラインで指定されたターゲットの前に最初に実行する必要がある 1 つ以上のターゲットです。ターゲットを複数指定する場合には、セミコロン (;) で区切ります。

ToolsVersion

省略可能属性

$(MSBuildBinPath) および $(MSBuildToolsPath) の値を決定するために、MSBuild ツールセット バージョンによって使用されます。

Xmlns

必須属性

xmlns 属性の値は、"https://schemas.microsoft.com/developer/msbuild/2003" であることが必要です。

子要素

要素

説明

Choose

省略可能な要素

子要素を評価して、評価対象となる一連の ItemGroup 要素や PropertyGroup 要素を選択します。

Import

省略可能な要素

プロジェクト ファイルに別のプロジェクト ファイルをインポートします。プロジェクトには 0 個以上の Import 要素を設定できます。

ItemGroup

省略可能な要素

個別のアイテムをグループ化するための要素です。アイテムは、Item 要素を使用して指定します。プロジェクトには 0 個以上の ItemGroup 要素を設定できます。

ProjectExtensions

省略可能な要素

MSBuild プロジェクト ファイル内に MSBuild に直接関係のない情報を保持します。プロジェクトには 0 個以上の ProjectExtensions 要素を設定できます。

PropertyGroup

省略可能な要素

個別のプロパティをグループ化するための要素です。プロパティは、Property 要素を使用して指定します。プロジェクトには 0 個以上の PropertyGroup 要素を設定できます。

Target

省略可能な要素

MSBuild を連続的に実行するための一連のタスクを格納します。タスクは、Task 要素を使用して指定します。プロジェクトには 0 個以上の Target 要素を設定できます。

UsingTask

省略可能な要素

MSBuild 内にタスクを登録します。プロジェクトには 0 個以上の UsingTask 要素を設定できます。

親要素

なし。

参照

処理手順

方法 : 最初にビルドするターゲットを指定する

概念

MSBuild プロジェクト ファイル スキーマ リファレンス

MSBuild の概要

参照

MSBuild コマンド ライン リファレンス