다음을 통해 공유


UseDotNet@2 - dotnet v2 작업 사용

이 작업을 사용하여 인터넷 또는 로컬 캐시에서 특정 버전의 .NET Core SDK를 획득하고 PATH에 추가합니다. 이 작업을 사용하여 후속 작업에 사용되는 .NET Core 버전을 변경합니다. 이 작업은 프록시 지원도 제공합니다.

Syntax

# Use .NET Core v2
# Acquires a specific version of the .NET Core SDK from the internet or the local cache and adds it to the PATH. Use this task to change the version of .NET Core used in subsequent tasks. Additionally provides proxy support.
- task: UseDotNet@2
  inputs:
    #packageType: 'sdk' # 'runtime' | 'sdk'. Package to install. Default: sdk.
    #useGlobalJson: false # boolean. Optional. Use when packageType = sdk. Use global json. Default: false.
    #workingDirectory: # string. Optional. Use when useGlobalJson = true. Working Directory. 
    #version: # string. Optional. Use when useGlobalJson = false || packageType = runtime. Version. 
    #includePreviewVersions: false # boolean. Optional. Use when useGlobalJson = false  || packageType = runtime. Include Preview Versions. Default: false.
  # Advanced
    #vsVersion: # string. Compatible Visual Studio version. 
    #installationPath: '$(Agent.ToolsDirectory)/dotnet' # string. Path To Install .Net Core. Default: $(Agent.ToolsDirectory)/dotnet.
    #performMultiLevelLookup: false # boolean. Perform Multi Level Lookup. Default: false.
# Use .NET Core v2
# Acquires a specific version of the .NET Core SDK from the internet or the local cache and adds it to the PATH. Use this task to change the version of .NET Core used in subsequent tasks. Additionally provides proxy support.
- task: UseDotNet@2
  inputs:
    #packageType: 'sdk' # 'runtime' | 'sdk'. Package to install. Default: sdk.
    #useGlobalJson: false # boolean. Optional. Use when packageType = sdk. Use global json. Default: false.
    #workingDirectory: # string. Optional. Use when useGlobalJson = true. Working Directory. 
    #version: # string. Optional. Use when useGlobalJson = false || packageType = runtime. Version. 
    #includePreviewVersions: false # boolean. Optional. Use when useGlobalJson = false  || packageType = runtime. Include Preview Versions. Default: false.
  # Advanced
    #installationPath: '$(Agent.ToolsDirectory)/dotnet' # string. Path To Install .Net Core. Default: $(Agent.ToolsDirectory)/dotnet.
    #performMultiLevelLookup: false # boolean. Perform Multi Level Lookup. Default: false.
# Use dotnet v2
# Acquires a specific version of the .NET Core SDK from the internet or the local cache and adds it to the PATH. Use this task to change the version of .NET Core used in subsequent tasks. Additionally provides proxy support.
- task: UseDotNet@2
  inputs:
    #packageType: 'sdk' # 'runtime' | 'sdk'. Package to install. Default: sdk.
    #version: # string. Version. 
    #includePreviewVersions: false # boolean. Include Preview Versions. Default: false.
  # Advanced
    #installationPath: '$(Agent.ToolsDirectory)/dotnet' # string. Path To Install .Net Core. Default: $(Agent.ToolsDirectory)/dotnet.
    #performMultiLevelLookup: false # boolean. Perform Multi Level Lookup. Default: false.

입력

packageType - 설치할 패키지
string. 허용되는 값: runtime, sdk (SDK(런타임 포함)) 기본값은 sdk입니다.

.NET 런타임 또는 SDK만 설치할지 여부를 지정합니다.


useGlobalJson - 전역 json 사용
boolean. (선택 사항) 을 사용할 때 packageType = sdk사용합니다. 기본값은 false입니다.

파일에서 global.json 모든 SDK를 설치합니다. 이러한 파일은 에서 system.DefaultWorkingDirectory검색됩니다. 작업 디렉터리 입력을 설정하여 검색 루트 경로를 변경할 수 있습니다.

6.x 입력에 UseDotNet@2.version 설명된 및 6.1.x 형식(와일드카드로 사용.x)은 의 매개 변수가 아닌 태스크의 sdk.version 입력에 global.json사용됩니다version.

와 같은 ##[error]Version 6.0.x is not allowed. Allowed version types are: majorVersion.x, majorVersion.minorVersion.x, majorVersion.minorVersion.patchVersion. More details: Only explicit versions and accepted, such as: 2.2.301. Version: 6.0.x is not valid. 오류 메시지가 표시되고 를 사용하는 global.json경우 에서 를 sdk.version 확인합니다 global.json.

에 대한 global.json자세한 내용은 사용할 .NET 버전 선택을 참조하세요.


workingDirectory - 작업 디렉터리
string. (선택 사항) 을 사용할 때 useGlobalJson = true사용합니다.

를 사용할 useGlobalJson때 파일을 검색해야 하는 경로를 global.json 지정합니다. 값이 비어 있으면 는 system.DefaultWorkingDirectory 루트 경로로 간주됩니다.


version - 버전
string. (선택 사항) 을 사용할 때 useGlobalJson = false || packageType = runtime사용합니다.

설치할 .NET Core SDK 또는 런타임의 버전을 지정합니다. 버전 값 형식은 예제와 함께 표시됩니다.

  • 2.x: 지정된 주 버전 2인 를 사용하여 최신 SDK 또는 런타임을 설치합니다.
  • 3.1.x: 지정된 주 및 부 버전 3 및 를 사용하여 최신 SDK 또는 런타임을 설치합니다 1.
  • 3.1.402: 지정된 SDK 또는 런타임 버전 를 3.1.402설치합니다.

SDK 또는 런타임 설치의 버전 값은 파일에 있습니다 releases.json . 주/부 버전의 에 releases.json 대한 링크는 releases-index 파일에 있습니다 . 예를 들어 버전 3.1에 대한 releases.json 파일에 대한 링크입니다.


version - 버전
string.

설치할 .NET Core SDK 또는 런타임의 버전을 지정합니다. 버전 값 형식은 예제와 함께 표시됩니다.

  • 2.x: 지정된 주 버전 2인 를 사용하여 최신 SDK 또는 런타임을 설치합니다.
  • 3.1.x: 지정된 주 및 부 버전 3 및 를 사용하여 최신 SDK 또는 런타임을 설치합니다 1.
  • 3.1.402: 지정된 SDK 또는 런타임 버전 를 3.1.402설치합니다.

SDK 또는 런타임 설치의 버전 값은 파일에 있습니다 releases.json . 주/부 버전의 에 releases.json 대한 링크는 releases-index 파일에 있습니다 . 예를 들어 버전 3.1에 대한 releases.json 파일에 대한 링크입니다.


vsVersion - 호환되는 Visual Studio 버전
string.

해당 .NET Core SDK 설치에 대해 호환되는 Visual Studio 버전을 지정합니다. 값은 주 버전, 부 버전 및 패치 번호를 포함하는 전체 버전 번호(예: 16.6.4)여야 합니다.

문자열에 사용되는 SDK 또는 런타임 설치의 version 버전 값이 파일에 있습니다 releases.json . 주/부 버전의 에 releases.json 대한 링크는 releases-index 파일에 있습니다 . 예를 들어 버전 3.1에 대한 releases.json 파일에 대한 링크입니다.


includePreviewVersions - 미리 보기 버전 포함
boolean. (선택 사항) 을 사용할 때 useGlobalJson = false || packageType = runtime사용합니다. 기본값은 false입니다.

true설정된 경우 작업에서 또는 3.1.x검색과 같은 최신 런타임/SDK 버전을 검색 2.2.x 할 때 미리 보기 버전이 포함됩니다. 와 같은 3.0.100-preview3-010431정확한 버전을 지정하면 이 설정이 무시됩니다.


includePreviewVersions - 미리 보기 버전 포함
boolean. 기본값은 false입니다.

true설정된 경우 작업에서 또는 3.1.x검색과 같은 최신 런타임/SDK 버전을 검색 2.2.x 할 때 미리 보기 버전이 포함됩니다. 와 같은 3.0.100-preview3-010431정확한 버전을 지정하면 이 설정이 무시됩니다.


installationPath - 설치 .NET Core 경로
string. 기본값은 $(Agent.ToolsDirectory)/dotnet입니다.

.NET Core SDK/런타임을 설치할 위치를 지정합니다. 경로가 다르면 에 다음과 같은 영향을 미칠 수 있습니다. NET의 동작입니다.

  • $(Agent.ToolsDirectory): 이 경로를 사용하면 이 디렉터리가 파이프라인 간에 정리되지 않으므로 에이전트에 설치가 캐시됩니다. 에이전트에서 실행되는 모든 파이프라인은 이전에 설치된 버전에 액세스할 수 있습니다.
  • $(Agent.TempDirectory): 이 경로를 사용하면 각 파이프라인 이후에 이 폴더가 정리되므로 파이프라인에서 캐시된 버전의 .NET Core를 사용하지 않습니다.
  • 다른 경로: 에이전트 프로세스에서 경로에 액세스할 수 있는 경우 모든 경로를 사용할 수 있습니다. 이렇게 하면 컴퓨터의 상태가 변경되고 컴퓨터에서 실행되는 모든 프로세스에 영향을 줍니다.

참고

다중 수준 조회 설정 를performMultiLevelLookup사용하여 .NET 호스트가 버전을 검색하는 방법을 구성할 수 있습니다.


performMultiLevelLookup - 다중 수준 조회 수행
boolean. 기본값은 false입니다.

적절한 공유 프레임워크를 검색할 때 .NET 호스트 프로세스의 동작을 구성합니다. 값은 다음과 같습니다.

  • false: 호스트 프로세스는 작업에서 지정한 폴더에 있는 버전만 검색합니다.
  • true: 호스트 프로세스는 다중 수준 조회를 사용하여 미리 정의된 전역 위치에서 검색합니다. 기본 전역 위치는 다음과 같습니다.
    • C:\Program Files\dotnet (64비트 프로세스)
    • C:\Program Files (x86)\dotnet (32비트 프로세스)

다중 수준 SharedFX 조회에 대해 자세히 알아봅니다.

참고

performMultiLevelLookup 는 Windows 기반 에이전트에만 적용됩니다.


작업 제어 옵션

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

출력 변수

없음

설명

.NET Core 사용 태스크는 인터넷 또는 도구 캐시에서 특정 버전의 .NET Core 를 획득하고 Azure Pipelines 에이전트(호스트 또는 프라이빗)의 PATH에 추가합니다. 이 작업을 사용하여 DotNetCoreCLI@2 같은 후속 작업에 사용되는 .NET Core 버전을 변경합니다. 빌드 정의에서 DotNetCoreCLI@2 앞에 이 작업을 추가하면 앱을 빌드, 테스트 및 게시할 때 버전을 사용할 수 있습니다.

도구 설치 관리자 접근 방식을 사용하면 에이전트 업데이트 주기에서 분리할 수도 있습니다. 찾고 있는 .NET Core 버전이 Azure Pipelines 에이전트(호스트 또는 프라이빗)에서 누락된 경우 이 작업을 사용하여 에이전트에 올바른 버전을 설치할 수 있습니다.

요구 사항

요구 사항 Description
파이프라인 유형 YAML, 클래식 빌드, 클래식 릴리스
실행 중 에이전트, DeploymentGroup
요청 None
Capabilities 이 작업을 실행하면 동일한 작업의 후속 작업에 대한 다음 요구 사항을 충족합니다. DotNetCore
명령 제한 사항 모두
설정 가능한 변수 모두
에이전트 버전 2.144.0 이상
작업 범주 도구
요구 사항 Description
파이프라인 유형 YAML, 클래식 빌드, 클래식 릴리스
실행 중 에이전트, DeploymentGroup
요청 None
Capabilities 이 작업을 실행하면 동일한 작업의 후속 작업에 대한 다음 요구 사항을 충족합니다. DotNetCore
명령 제한 사항 모두
설정 가능한 변수 모두
에이전트 버전 지원되는 모든 에이전트 버전.
작업 범주 도구