Поделиться через


Элемент 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".

Дочерние элементы

Элемент

Описание

Выберите

Необязательный элемент.

Вычисляет значения дочерних элементов, чтобы можно было выбрать один набор элементов ItemGroup или PropertyGroup для вычисления.

Импорт

Необязательный элемент.

Позволяет импортировать в файл проекта другой файл проекта. В проекте может быть любое число элементов Import, включая ноль.

ItemGroup

Необязательный элемент.

Элемент, предназначенный для группировки отдельных элементов. Группируемые элементы задаются при помощи элемента Item. В проекте может быть любое число элементов ItemGroup, включая ноль.

ProjectExtensions

Необязательный элемент.

Обеспечивает возможность сохранения в файле проекта MSBuild информации, не относящейся к MSBuild. В проекте может быть максимум один элемент ProjectExtensions.

PropertyGroup

Необязательный элемент.

Элемент, предназначенный для группировки отдельных свойств. Группируемые свойства задаются при помощи элемента Property. В проекте может быть любое число элементов PropertyGroup, включая ноль.

Целевой объект

Необязательный элемент.

Содержит набор задач для MSBuild, подлежащих последовательному выполнению. Задачи указываются при помощи элемента Task. В проекте может быть любое число элементов Target, включая ноль.

UsingTask

Необязательный элемент.

Позволяет регистрировать задачи в MSBuild. В проекте может быть любое число элементов UsingTask, включая ноль.

Родительские элементы

Нет.

См. также

Задачи

Практическое руководство. Выбор цели для первого построения

Ссылки

Справочные сведения о командной строке MSBuild

Основные понятия

Справочные сведения о схеме файлов проектов MSBuild

Другие ресурсы

MSBuild Overview