이 문서의 기술은 특정 컴퓨터, 가상 머신 또는 컨테이너에서 실행되는 모든 빌드를 사용자 지정하려는 경우에 유용합니다. 예를 들어 빌드 서버를 설정할 때 서버의 모든 빌드에 대해 MSBuild 설정을 전역적으로 구성해야 할 수 있습니다. 원칙적으로 전역 Microsoft.Common.Targets 또는 Microsoft.Common.Props 파일을 수정할 수 있지만 더 나은 방법이 있습니다. 특정 MSBuild 속성을 사용하고 특정 사용자 지정 .targets 및 .props 파일을 추가하여 특정 프로젝트 형식(예: 모든 C# 프로젝트)의 모든 빌드에 영향을 줄 수 있습니다.
표준 .props 및 .targets 파일 전후
MSBuild 또는 Visual Studio 설치로 제어되는 모든 C# 또는 Visual Basic 빌드에 영향을 주려면 Custom.Before.Microsoft.Common.Targets 또는 Custom.After.Microsoft.Common.Targets 파일을 만듭니다. 이 파일은 Microsoft.Common.targets 이전 또는 이후에 실행되는 대상을 포함합니다. 또는 Custom.Before.Microsoft.Common.Props 또는 Custom.After.Microsoft.Common.Props 파일을 만들어, Microsoft.Common.props 이전 또는 이후에 처리될 속성을 포함합니다.
다음 MSBuild 속성을 사용하여 이러한 파일의 위치를 지정할 수 있습니다.
- CustomBeforeMicrosoftCommonProps
- CustomBeforeMicrosoftCommonTargets
- CustomAfterMicrosoftCommonProps
- CustomAfterMicrosoftCommonTargets
- CustomBeforeMicrosoftCSharpTargets
- CustomBeforeMicrosoftVisualBasicTargets
- CustomAfterMicrosoftCSharpTargets
- CustomAfterMicrosoftVisualBasicTargets
이러한 속성의 공통 버전은 C# 및 Visual Basic 프로젝트 모두에 영향을 미칩니다. MSBuild 명령줄에서 이러한 속성을 설정할 수 있습니다.
msbuild /p:CustomBeforeMicrosoftCommonTargets="C:\build\config\Custom.Before.Microsoft.Common.Targets" MyProject.csproj
경고
Visual Studio는 일치하는 형식의 프로젝트를 빌드할 때마다 MSBuild 폴더에서 사용자 지정 .targets 또는 .props 파일을 찾은 경우 해당 파일을 사용합니다. 이 사용자 지정은 의도하지 않은 결과를 초래할 수 있으며, 잘못 수행된 경우 Visual Studio가 컴퓨터에서 빌드하는 기능을 사용하지 않도록 설정할 수 있습니다.
일반 props 파일 바꾸기
속성을 AlternateCommonProps 사용하여 .props 대신 사용할 파일을 지정할 수도 있습니다.
Microsoft.Common.props를 직접 수정하여 사용자 지정해야 하는 경우 대신 해당 파일의 표준 버전을 다른 파일에 복사한 다음 대체 버전에서만 변경할 수 있습니다.
가장 좋은 방법은 시나리오에 따라 달라집니다. Visual Studio 확장성을 사용하여 빌드 시스템을 사용자 지정하고 사용자 지정을 설치하고 관리하는 메커니즘을 제공할 수 있습니다.
전용 빌드 서버가 있고 특정 대상이 해당 서버에서 실행되는 적절한 프로젝트 유형의 모든 빌드에서 항상 실행되도록 하려면 전역 사용자 지정 .targets 또는 .props 파일을 사용하는 것이 좋습니다. 특정 조건이 적용되는 경우에만 사용자 지정 대상을 실행하려면 다른 파일 위치를 사용하고 필요한 경우에만 MSBuild 명령줄에서 적절한 MSBuild 속성을 설정하여 해당 파일의 경로를 설정합니다.
관련 콘텐츠
- 빌드를사용자 지정합니다.