MSBuild .targets
파일
MSBuild에는 일반적인 시나리오에 대한 항목, 속성, 대상 및 태스크가 포함된 여러 .targets
파일이 포함되어 있습니다. 이러한 파일은 대부분의 Visual Studio 프로젝트 파일로 자동 가져오기되므로 쉽게 유지 관리하고 읽을 수 있습니다.
SDK 스타일 프로젝트(예: <Project Sdk="Microsoft.NET.Sdk">
프로젝트)는 SDK를 참조하지 않는 프로젝트와 다르게 파일을 가져옵니다 .targets
. SDK 스타일 프로젝트의 경우 가져온 파일이 프로젝트 파일에 표시되지 .targets
않습니다. 이러한 가져오기는 참조하는 SDK에서 관리되기 때문입니다. 그러나 SDK 스타일 프로젝트는 파일의 기본 본문 전후에 표준 가져오기가 있는 비 SDK 스타일 프로젝트와 동일하므로 해당 프로젝트에서 표준 .targets
파일을 가져온다고 말하는 것은 여전히 정확합니다.
.NET SDK 대상은 예를 들어 C:\Program Files\dotnet\sdk\{version}\Sdks\Microsoft.NET.Sdk\targets\
Windows의 경우 Microsoft.NET.Sdk
.NET SDK와 함께 설치됩니다. SDK의 전체 목록과 .targets
가져오는 파일은 .NET 프로젝트 SDK를 참조 하세요.
SDK를 지정하지 않는 프로젝트는 일반적으로 빌드 프로세스를 정의하기 위해 하나 이상의 .targets
파일을 명시적으로 가져옵니다. 예를 들어 이전 버전의 Visual Studio 에서 만든 C# 프로젝트는 Microsoft.Common.targets를 가져오는 Microsoft.CSharp.targets를 가져옵니다. C# 프로젝트 자체는 해당 프로젝트와 관련된 항목 및 속성을 정의하지만 C# 프로젝트에 대한 표준 빌드 규칙은 가져온 .targets
파일에 정의됩니다.
이 값은 $(MSBuildToolsPath)
이러한 공통 .targets
파일의 경로를 지정합니다. .NET 프로젝트의 경우 경로는 일반적으로 {Visual Studio installation folder}\MSBuild\Current\Bin\{architecture}
.
참고 항목
대상을 직접 만드는 방법에 대한 자세한 내용은 대상을 참조하세요. Import
요소를 사용하여 프로젝트 파일을 다른 프로젝트 파일에 삽입하는 방법에 대한 자세한 내용은 가져오기 요소(MSBuild) 및 방법: 여러 프로젝트 파일에서 동일한 대상 사용을 참조하세요.
일반 .targets
파일
.targets 파일 | 설명 |
---|---|
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는 디렉터리 아래에 프로젝트에 대한 사용자 지정을 제공하는 사용자 정의 파일입니다. ImportDirectoryBuildTargets 속성을 false로 설정한 경우가 아니면 Microsoft.Common.targets에서 이 파일을 자동으로 가져옵니다. 자세한 내용은 빌드 사용자 지정을 참조하세요.