MSBuild-файлы .targets

MSBuild включает несколько .targets файлов, содержащих элементы, свойства, целевые объекты и задачи для распространенных сценариев. Эти файлы автоматически импортируются в большинство файлов проекта Visual Studio для упрощения обслуживания и улучшения читаемости.

Проекты в стиле ПАКЕТА SDK (проекты с аналогичными) импортируют .targets файлы по-разному по сравнению с <Project Sdk="Microsoft.NET.Sdk">проектами, не ссылающимися на пакет SDK. Для проектов в стиле ПАКЕТА SDK не отображается импортированный .targets файл в файле проекта, так как эти импорты управляются ссылкой на пакет SDK. Однако проекты в стиле SDK эквивалентны проектам, не относящихся к пакету SDK, с стандартными импортами до и после основного текста файла, поэтому они по-прежнему точны, чтобы сказать, что стандартные .targets файлы импортируются в этих проектах.

Целевые объекты пакета SDK для .NET устанавливаются с помощью пакета SDK для .NET, например для C:\Program Files\dotnet\sdk\{version}\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk Windows. Полный список пакетов SDK и импортируемых .targets файлов см . в пакетах SDK для проекта .NET.

Проекты, которые не указывают пакет SDK, обычно явно импортируют один или несколько .targets файлов для определения процесса сборки. Например, проекты C#, созданные более ранними версиями Visual Studio, импортируют Microsoft.CSharp.targets, импортируют Microsoft.Common.targets. Сам проект C# определяет элементы и свойства, относящиеся к проекту, но стандартные правила сборки для проекта C# определяются в импортированных .targets файлах.

Значение $(MSBuildToolsPath) указывает путь к этим общим .targets файлам. Для проектов .NET обычно используется {Visual Studio installation folder}\MSBuild\Current\Bin\{architecture}путь.

Примечание.

Дополнительные сведения о создании собственных целевых объектов см. в разделе Целевые объекты. Сведения об использовании элемента Import для вставки файла проекта в другой файл проекта см. в разделах Элемент Import (MSBuild) и Практическое руководство. Использование одного и того же целевого объекта в нескольких файлах проектов.

Общие .targets файлы

Файл TARGETS Description
Microsoft.Common.targets Определяет этапы стандартного процесса сборки для проектов Visual Basic и C#.

Импортированы с помощью файлов Microsoft.CSharp.targets и Microsoft.VisualBasic.targets, которые включают в себя следующий оператор: <Import Project="Microsoft.Common.targets" />
Microsoft.CSharp.targets Определяет этапы стандартного процесса сборки для проектов Visual C#.

Импортированный файлами проекта Visual C# (.csproj).
Microsoft.VisualBasic.targets Определяет этапы стандартного процесса сборки для проектов Visual Basic.

Импортированный файлами проекта Visual Basic (.vbproj).

Если вы открываете и просматриваете файлы, они довольно тонкие оболочки вокруг других .targets файлов, как правилоMicrosoft.{language}.CurrentVersion.targets, или для сценариев перекрестного назначения. Microsoft.{language}.CrossTargeting.targets

Directory.Build.targets

Directory.Build.targets является определяемым пользователем файлом, который содержит настройки для проектов в каталоге. Этот файл автоматически импортируется из Microsoft.Common.targets, пока свойству ImportDirectoryBuildTargets не будет назначено значение false. Дополнительные сведения см. в статье Настройка сборки.

См. также