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


Элемент Project (MSBuild)

Обязательный корневой элемент файла проекта MSBuild.

<Project InitialTargets="TargetA;TargetB"
         DefaultTargets="TargetC;TargetD"
         TreatAsLocalProperty="PropertyA;PropertyB"
         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).

TreatAsLocalProperty

Необязательный атрибут.

Имена свойств, которые не будут учитываться, что были глобальными. Этот атрибут исключает определенные свойства командной строки переопределять значения свойств, установленных в файл проекта или целевых объектов и все последующие импорты. Несколько свойств в качестве разделителя используется точка с запятой (;).

Обычно глобальных свойств переопределяют значения свойств, установленных в проект или файл целевых объектов. Если свойство перечислитьо в значении TreatAsLocalProperty, то глобальное значение свойства не переопределяет значения свойств, установленных в этот файл и все последующие импорты. Дополнительные сведения см. в разделе Практическое руководство. Построение одинаковых исходных файлов с различными параметрами.

Примечание

Свойства можно задать глобальные в командной строке с помощью /property (или /p) переключения.Можно также установить или изменить глобальные свойства для проектов дочернего элемента multi- в построении проекта MSBuild с помощью атрибута Properties задайте действие.Дополнительные сведения см. в разделе Задача MSBuild.

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