다음을 통해 공유


VSBuild@1 - Visual Studio 빌드 v1 작업

이 작업을 사용하여 MSBuild를 사용하여 빌드하고 Visual Studio 버전 속성을 설정합니다. Azure에 Visual Studio 이미지를 설치하는 방법에 대해 자세히 알아봅니다.

Syntax

# Visual Studio build v1
# Build with MSBuild and set the Visual Studio version property.
- task: VSBuild@1
  inputs:
    solution: '**\*.sln' # string. Required. Solution. Default: **\*.sln.
    #vsVersion: 'latest' # 'latest' | '17.0' | '16.0' | '15.0' | '14.0' | '12.0' | '11.0'. Visual Studio Version. Default: latest.
    #msbuildArgs: # string. MSBuild Arguments. 
    #platform: # string. Platform. 
    #configuration: # string. Configuration. 
    #clean: false # boolean. Clean. Default: false.
  # Advanced
    #maximumCpuCount: false # boolean. Build in Parallel. Default: false.
    #restoreNugetPackages: false # boolean. Restore NuGet Packages. Default: false.
    #msbuildArchitecture: 'x86' # 'x86' | 'x64'. MSBuild Architecture. Default: x86.
    #logProjectEvents: true # boolean. Record Project Details. Default: true.
    #createLogFile: false # boolean. Create Log File. Default: false.
    #logFileVerbosity: 'normal' # 'quiet' | 'minimal' | 'normal' | 'detailed' | 'diagnostic'. Optional. Use when createLogFile = true. Log File Verbosity. Default: normal.
    #enableDefaultLogger: true # boolean. Enable Default Logger. Default: true.
    #customVersion: # string. Custom Version.
# Visual Studio build v1
# Build with MSBuild and set the Visual Studio version property.
- task: VSBuild@1
  inputs:
    solution: '**\*.sln' # string. Required. Solution. Default: **\*.sln.
    #vsVersion: 'latest' # 'latest' | '16.0' | '15.0' | '14.0' | '12.0' | '11.0'. Visual Studio Version. Default: latest.
    #msbuildArgs: # string. MSBuild Arguments. 
    #platform: # string. Platform. 
    #configuration: # string. Configuration. 
    #clean: false # boolean. Clean. Default: false.
  # Advanced
    #maximumCpuCount: false # boolean. Build in Parallel. Default: false.
    #restoreNugetPackages: false # boolean. Restore NuGet Packages. Default: false.
    #msbuildArchitecture: 'x86' # 'x86' | 'x64'. MSBuild Architecture. Default: x86.
    #logProjectEvents: true # boolean. Record Project Details. Default: true.
    #createLogFile: false # boolean. Create Log File. Default: false.
    #logFileVerbosity: 'normal' # 'quiet' | 'minimal' | 'normal' | 'detailed' | 'diagnostic'. Optional. Use when createLogFile = true. Log File Verbosity. Default: normal.
# Visual Studio Build v1
# Build with MSBuild and set the Visual Studio version property.
- task: VSBuild@1
  inputs:
    solution: '**\*.sln' # string. Required. Solution. Default: **\*.sln.
    #vsVersion: 'latest' # 'latest' | '16.0' | '15.0' | '14.0' | '12.0' | '11.0'. Visual Studio Version. Default: latest.
    #msbuildArgs: # string. MSBuild Arguments. 
    #platform: # string. Platform. 
    #configuration: # string. Configuration. 
    #clean: false # boolean. Clean. Default: false.
  # Advanced
    #maximumCpuCount: false # boolean. Build in Parallel. Default: false.
    #restoreNugetPackages: false # boolean. Restore NuGet Packages. Default: false.
    #msbuildArchitecture: 'x86' # 'x86' | 'x64'. MSBuild Architecture. Default: x86.
    #logProjectEvents: true # boolean. Record Project Details. Default: true.
    #createLogFile: false # boolean. Create Log File. Default: false.

입력

solution - 솔루션
string. 필수 요소. 기본값은 **\*.sln입니다.

빌드 프로세스에서 사용할 작업에 대한 솔루션을 지정합니다.

단일 솔루션을 빌드하려면 ... 단추를 클릭하고 솔루션을 지정합니다.

여러 솔루션을 빌드하려면 검색 조건을 지정합니다. 단일 폴더 와일드카드() 및 재귀 와일드카드(***)를 사용할 수 있습니다. 예를 들어 모든 **.sln 하위 디렉터리의 모든 .sln 파일을 검색합니다.

지정한 솔루션이 이 빌드 파이프라인에서 다운로드되었는지 확인합니다. 리포지토리 탭에서 다음을 수행합니다.

  • TFVC를 사용하는 경우 솔루션이 리포지토리 탭의 매핑 중 하나의 자식인지 확인합니다.
  • Git을 사용하는 경우 프로젝트 또는 솔루션이 Git 리포지토리와 빌드 중인 분기에 있는지 확인합니다.

  • MSBuild 프로젝트(.*proj) 파일을 빌드할 수도 있습니다.
  • 사용자 지정된 MSBuild 프로젝트 파일을 빌드하는 경우 Visual Studio 빌드 작업 대신 MSBuild 작업을 사용하는 것이 좋습니다.

vsVersion - Visual Studio 버전
string. 허용되는 값: latest, 17.0 (Visual Studio 2022), 16.0 (Visual Studio 2019), 15.0 (Visual Studio 2017), 14.0 (Visual Studio 2015), 12.0 (Visual Studio 2013), 11.0 (Visual Studio 2012). 기본값은 latest입니다.

이 입력의 값은 솔루션을 만드는 데 사용되는 Visual Studio 버전과 일치해야 합니다.

빌드에서 /p:VisualStudioVersion={numeric_visual_studio_version} 실행하는 MSBuild 명령에 인수를 추가합니다. 예를 들어 Visual Studio 2015/p:VisualStudioVersion=14.0를 지정하는 경우 는 MSBuild 명령에 추가됩니다.

Azure Pipelines: 팀에서 Microsoft 호스팅 에이전트와 함께 Visual Studio를 사용하려는 경우 windows-latest 를 기본 빌드 풀로 선택합니다. Microsoft 호스팅 에이전트를 참조하세요.


vsVersion - Visual Studio 버전
string. 허용되는 값: latest, 16.0 (Visual Studio 2019), 15.0 (Visual Studio 2017), 14.0 (Visual Studio 2015), 12.0 (Visual Studio 2013), 11.0 (Visual Studio 2012). 기본값은 latest입니다.

이 입력의 값은 솔루션을 만드는 데 사용되는 Visual Studio 버전과 일치해야 합니다.

빌드에서 /p:VisualStudioVersion={numeric_visual_studio_version} 실행하는 MSBuild 명령에 인수를 추가합니다. 예를 들어 Visual Studio 2015/p:VisualStudioVersion=14.0를 지정하는 경우 는 MSBuild 명령에 추가됩니다.

Azure Pipelines: 팀에서 Microsoft 호스팅 에이전트와 함께 Visual Studio를 사용하려는 경우 windows-latest 를 기본 빌드 풀로 선택합니다. Microsoft 호스팅 에이전트를 참조하세요.


msbuildArgs - MSBuild 인수
string.

MSBuild에 추가 인수를 전달합니다. 구문은 MSBuild Command-Line 참조를 참조하세요.


platform - 플랫폼
string.

빌드하려는 플랫폼(예: Win32, , x86x64또는 any cpu)을 지정합니다.

  • 솔루션 대신 MSBuild 프로젝트(.*proj) 파일을 대상으로 하는 경우 공백 없음을 지정 AnyCPU 합니다.
  • 변수 탭(큐 시간에 허용 선택)에서 와 같은 BuildPlatform 빌드 변수를 선언하고 여기에서 로 $(BuildPlatform)참조합니다. 이렇게 하면 빌드를 큐에 대기하고 여러 구성 빌드를 사용하도록 설정할 때 플랫폼을 수정할 수 있습니다.

configuration - 구성
string.

빌드하려는 구성(예: debug 또는 release)을 지정합니다.

변수 탭(큐 시간에 허용 선택)에서 와 같은 BuildConfiguration 빌드 변수를 선언하고 여기에서 로 $(BuildConfiguration)참조합니다. 이렇게 하면 빌드를 큐에 대기하고 여러 구성 빌드를 사용하도록 설정할 때 플랫폼을 수정할 수 있습니다.


clean - 청소
boolean. 기본값은 false입니다.

false설정하면 태스크는 증분 빌드를 만듭니다. 이 설정은 특히 코드베이스가 큰 경우 빌드 시간을 줄일 수 있습니다. 리포 false지토리 정리도 로 설정하지 않는 한 이 옵션은 실제 효과가 없습니다.

true설정하면 태스크는 코드 프로젝트의 모든 코드를 다시 빌드합니다. 이는 MSBuild /target:clean 인수와 동일합니다.


maximumCpuCount - 병렬로 빌드
boolean. 기본값은 false입니다.

선택 사항입니다. MSBuild 대상 구성이 빌드와 병렬로 호환되는 경우 이 입력을 검사 MSBuild로 스위치를 전달할 /m 수 있습니다(Windows에만 해당). 대상 구성이 빌드와 병렬로 호환되지 않는 경우 이 옵션을 선택하면 빌드에서 파일 사용 오류가 발생하거나 간헐적이거나 일관되지 않은 빌드 오류가 발생할 수 있습니다.


restoreNugetPackages - NuGet 패키지 복원
boolean. 기본값은 false입니다.

이 입력은 더 이상 사용되지 않습니다. NuGet 패키지를 복원하려면 빌드 전에 NuGet 도구 설치 관리자 작업을 추가합니다.


msbuildArchitecture - MSBuild 아키텍처
string. 허용되는 값: x86 (MSBuild x86), x64 (MSBuild x64). 기본값은 x86입니다.

선택 사항입니다. 실행할 MSBuild의 아키텍처(x86 또는 x64)를 제공합니다.

Visual Studio는 32비트 애플리케이션으로 실행되므로 64비트 버전의 Team Foundation Build Service를 실행하는 빌드 에이전트에서 빌드를 처리할 때 문제가 발생할 수 있습니다. MSBuild x86를 선택하면 이러한 문제를 resolve 수 있습니다.


logProjectEvents - 프로젝트 세부 정보 기록
boolean. 기본값은 true입니다.

선택 사항입니다. 각 프로젝트에 대한 타임라인 세부 정보를 기록합니다.


createLogFile - 로그 파일 만들기
boolean. 기본값은 false입니다.

선택 사항입니다. 로그 파일(Windows에만 해당)을 만듭니다.


logFileVerbosity - 로그 파일 세부 정보
string. 선택 사항입니다. 를 사용하는 경우 createLogFile = true를 사용합니다. 허용되는 값: quiet, minimal, normal, detailed, . diagnostic 기본값은 normal입니다.

로그 파일의 세부 정보 수준을 지정합니다.


enableDefaultLogger - 기본 로거 사용
boolean. 기본값은 true입니다.

true설정하면 MSBuild에 대한 기본 로거를 사용하도록 설정합니다.


customVersion - 사용자 지정 버전
string.

Visual Studio의 사용자 지정 버전을 설정합니다. 예: 15.0, , 16.0. 17.0 필요한 버전의 Visual Studio를 시스템에 설치해야 합니다.

Azure Pipelines: 팀에서 Microsoft 호스팅 에이전트와 함께 Visual Studio 2022를 사용하려는 경우 기본 빌드 풀로 선택합니다 windows-2022 . 자세한 내용은 Microsoft 호스팅 에이전트를 참조하세요.


작업 제어 옵션

모든 작업에는 작업 입력 외에 제어 옵션이 있습니다. 자세한 내용은 컨트롤 옵션 및 일반적인 작업 속성을 참조하세요.

출력 변수

없음

설명

Azure에 Visual Studio 이미지를 설치하는 방법에 대해 자세히 알아봅니다.

중요

이 작업은 Windows를 실행하는 에이전트에서만 지원됩니다.

요구 사항

요구 사항 Description
파이프라인 유형 YAML, 클래식 빌드
실행 중 에이전트, DeploymentGroup
요청 자체 호스팅 에이전트에는 이 작업을 사용하는 작업을 실행하기 위한 다음 요구 사항과 일치하는 기능이 있어야 합니다. msbuild, visualstudio
Capabilities 이 작업은 작업의 후속 작업에 대한 요구를 충족하지 않습니다.
명령 제한 사항 모두
Settable 변수 모두
에이전트 버전 1.95.0 이상
작업 범주 빌드