Windows에 .NET 설치

이 문서에서는 Windows에 .NET을 설치하는 방법을 알아봅니다. .NET은 런타임과 SDK로 구성됩니다. 런타임은 .NET 앱을 실행하는 데 사용되며 앱에 포함되거나 포함되지 않을 수 있습니다. SDK는 .NET 앱과 라이브러리를 만드는 데 사용됩니다. .NET 런타임은 항상 SDK와 함께 설치됩니다.

최신 버전의 .NET은 7입니다.

지원되는 릴리스에는 LTS(장기 지원) 릴리스 또는 STS(표준 기간 지원)라는 두 가지 유형이 있습니다. 모든 릴리스의 품질은 동일합니다. 유일한 차이점은 지원 길이입니다. LTS 릴리스는 3년 동안 무료 지원 및 패치를 받습니다. STS 릴리스는 18개월 동안 무료 지원 및 패치를 받습니다. 자세한 내용은 .NET 지원 정책을 참조하세요.

다음 표에서는 각 버전의 .NET(및 .NET Core)의 지원 상태를 나열합니다.

✔️ 지원됨 ❌ 지원 안 됨
7(STS) 5
6(LTS) 3.0
3.1(LTS) 2.2
2.1
2.0
1.1
1.0

Windows 패키지 관리자 설치(winget)

winget 도구를 사용하여 Windows 패키지 관리자 서비스를 통해 .NET을 설치하고 관리할 수 있습니다. winget을 설치하고 사용하는 방법에 대한 자세한 내용은 winget 도구 사용을 참조하세요.

.NET 시스템 전체를 설치하는 경우 관리 권한으로 설치합니다.

SDK 설치

.NET SDK를 사용하면 .NET으로 앱을 개발할 수 있습니다. .NET SDK를 설치하는 경우 해당 런타임을 설치할 필요가 없습니다. .NET SDK를 설치하려면 다음 명령을 실행합니다.

winget install Microsoft.DotNet.SDK.7

런타임 설치

Windows의 경우 세 가지 .NET 런타임을 설치할 수 있습니다. 모든 유형의 .NET 앱과 호환되도록 .NET 데스크톱 런타임과 ASP.NET Core 런타임을 모두 설치해야 합니다.

  • .NET 데스크톱 런타임

    이 런타임에는 기본 .NET 런타임이 포함되며 .NET으로 빌드된 Windows Presentation Foundation(WPF) 및 Windows Forms 앱을 지원합니다. 이는 Windows와 함께 제공되는 .NET Framework 동일하지 않습니다.

    winget install Microsoft.DotNet.DesktopRuntime.7
    
  • ASP.NET Core 런타임

    이 런타임은 기본 .NET 런타임을 포함하고 웹 서버 앱을 실행합니다. ASP.NET Core 런타임을 사용하면 런타임을 제공하지 않는 .NET으로 만든 앱을 실행할 수 있습니다. 다음 명령을 실행하면 .NET에 대해 가장 호환성이 높은 ASP.NET Core 런타임이 설치됩니다. 터미널에서 다음 명령을 실행합니다.

    winget install Microsoft.DotNet.AspNetCore.7
    
  • .NET 런타임

    기본 런타임이며 콘솔 앱을 실행하는 데 필요한 구성 요소만 포함합니다. 일반적으로 다른 런타임을 설치합니다.

    winget install Microsoft.DotNet.Runtime.7
    

와 같은 버전 번호를 단어Preview6대체하여 런타임의 미리 보기 버전을 설치할 수 있습니다. 다음 예제에서는 .NET Desktop 런타임의 미리 보기 릴리스를 설치합니다.

winget install Microsoft.DotNet.DesktopRuntime.Preview

Visual Studio Code와 함께 설치

Visual Studio Code는 데스크톱에서 실행되는 강력한 경량 소스 코드 편집기입니다. Visual Studio Code는 Windows, macOS 및 Linux에서 사용할 수 있습니다.

Visual Studio Code에 Visual Studio처럼 자동화된 .NET Core 설치 프로그램이 포함되지 않은 경우, 간편하게 .NET Core 지원을 추가할 수 있습니다.

  1. Visual Studio Code를 다운로드하여 설치합니다.
  2. .NET SDK를 다운로드하여 설치합니다.
  3. Visual Studio Code Marketplace에서 C# 확장을 설치합니다.

Windows Installer를 사용하여 설치

Windows Installer 실행 파일은 .NET 다운로드 페이지에서 제공합니다.

Windows Installer를 사용하여 .NET을 설치하는 경우 DOTNETHOME_X64DOTNETHOME_X86 매개 변수를 설정하여 설치 경로를 사용자 지정할 수 있습니다.

dotnet-sdk-7.0.100-win-x64.exe DOTNETHOME_X64="F:\dotnet\x64" DOTNETHOME_X86="F:\dotnet\x86"

프로덕션 환경에서처럼 .NET을 자동으로 설치하거나 연속 통합을 지원하려면 다음 스위치를 사용합니다.

  • /install
    .NET을 설치합니다.

  • /quiet
    UI와 프롬프트가 표시되지 않도록 합니다.

  • /norestart
    다시 시작하지 않습니다.

dotnet-sdk-7.0.100-win-x64.exe /install /quiet /norestart

자세한 내용은 표준 설치 관리자 명령줄 옵션을 참조하세요.

설치 관리자는 성공 시 종료 코드 0을 반환하고 다시 시작이 필요함을 나타내기 위해 종료 코드 3010을 반환합니다. 다른 모든 값은 일반적으로 오류 코드입니다.

PowerShell 자동화를 사용하여 설치

dotnet-install 스크립트는 CI 자동화 및 런타임의 관리자가 아닌 일반 설치를 수행하는 데 사용됩니다. 스크립트는 dotnet-install 스크립트 참조 페이지에서 다운로드할 수 있습니다.

스크립트는 기본적으로 최신 LTS(장기 지원) 버전(.NET 6)을 설치합니다. Channel 스위치를 지정하여 특정 릴리스를 선택할 수 있습니다. 런타임을 설치하려면 Runtime 스위치를 포함합니다. 포함하지 않을 경우 스크립트가 SDK를 설치합니다.

다음 명령은 최대 호환성을 위해 ASP.NET Core 런타임을 설치합니다. ASP.NET Core 런타임에는 표준 .NET 런타임도 포함되어 있습니다.

dotnet-install.ps1 -Channel 7.0 -Runtime aspnetcore

-Runtime 스위치를 생략하여 SDK를 설치합니다. 스위치는 -Channel 이 예제 STS에서 최신 표준 용어 지원 버전(.NET 7)을 설치하는 로 설정됩니다.

dotnet-install.ps1 -Channel STS

Visual Studio를 사용하여 설치

Visual Studio를 사용하여 .NET 앱을 개발하는 경우 다음 표에서 대상 .NET SDK 버전에 따라 필요한 Visual Studio의 최소 버전을 확인하세요.

.NET SDK 버전 Visual Studio 버전
7 Visual Studio 2022 버전 17.4 이상.
6 Visual Studio 2022 버전 17.0 이상
5 Visual Studio 2019 버전 16.8 이상
3.1 Visual Studio 2019 버전 16.4 이상
3.0 Visual Studio 2019 버전 16.3 이상
2.2 Visual Studio 2017 버전 15.9 이상
2.1 Visual Studio 2017 버전 15.7 이상

Visual Studio가 이미 설치되어 있다면 다음 단계에 따라 버전을 확인할 수 있습니다.

  1. Visual Studio를 엽니다.
  2. 도움말>Microsoft Visual Studio 정보를 선택합니다.
  3. 정보 대화 상자에서 버전 번호를 확인합니다.

Visual Studio가 최신 .NET SDK 및 런타임을 설치할 수 있습니다.

워크로드 선택

Visual Studio를 설치하거나 수정할 때는 빌드하려는 애플리케이션의 종류에 따라 다음 워크로드 중 하나 이상을 선택합니다.

  • 기타 도구 세트 섹션의 .NET Core 플랫폼 간 개발 워크로드
  • 웹 클라우드 섹션의 ASP.NET 및웹 & 개발 워크로드입니다.
  • 웹 & 클라우드 섹션의 Azure 개발 워크로드.
  • Desktop Mobile 섹션의 .NET데스크톱 & 개발 워크로드입니다.

Windows Visual Studio 2019 및 .NET Core 워크로드

지원되는 릴리스

다음 표는 현재 지원되는 .NET 릴리스와 해당 릴리스가 지원되는 Windows 버전의 목록입니다. 이러한 버전은 .NET 버전이 지원 종료에 도달하거나 Windows 버전이 지원 종료에 도달할 때까지 계속 지원됩니다.

Windows 10 버전의 서비스 종료 날짜는 버전별로 분할됩니다. Home, Pro, Pro EducationPro for Workstations 버전만 다음 표에서 다룹니다. 특정 세부 정보는 Windows 수명 주기 팩트 시트를 확인하세요.

+ 기호는 최소 버전을 나타냅니다.

운영 체제 .NET 7 .NET 6 .NET Core 3.1
Windows 11 ✔️ ✔️ ✔️
Windows Server 2022 ✔️ ✔️ ✔️
Windows Server 버전 1903 이상 ✔️ ✔️ ✔️
Windows 10 버전 1607 이상 ✔️ ✔️ ✔️
Windows 8.1 ✔️ ✔️
Windows 7 SP1 ESU ✔️ ✔️
Windows Server 2019
Windows Server 2016
Windows Server 2012 R2
Windows Server 2012
✔️ ✔️
Windows Server Core 2012 R2 ✔️ ✔️ ✔️
Windows Server Core 2012 ✔️ ✔️ ✔️
Nano Server, 버전 1809+ ✔️ ✔️ ✔️
Nano Server, 버전 1803 ✔️

.NET 7 지원 운영 체제, 배포 및 수명 주기 정책에 대한 자세한 내용은 .NET 7 지원 OS 버전을 참조하세요.

지원되지 않는 릴리스

다음 .NET 버전은 ❌ 더 이상 지원되지 않습니다.

  • .NET 5
  • .NET Core 3.0
  • .NET Core 2.2
  • .NET Core 2.1
  • .NET Core 2.0

런타임 정보

런타임은 .NET으로 만든 앱을 실행하는 데 사용됩니다. 앱 작성자는 앱을 게시할 때 앱과 함께 런타임을 포함할 수 있습니다. 앱 작성자가 런타임을 포함하지 않는 경우, 사용자가 런타임을 설치할 수 있습니다.

Windows에 설치할 수 있는 세 가지 런타임이 있습니다.

  • ‘ASP.NET Core 런타임’
    ASP.NET Core 앱을 실행합니다. .NET 런타임을 포함합니다.

  • ‘데스크톱 런타임’
    Windows용 .NET WPF 및 Windows Forms 데스크톱 앱을 실행합니다. .NET 런타임을 포함합니다.

  • ‘.NET 런타임’
    이 런타임은 가장 간단한 런타임이며 다른 런타임을 포함하지 않습니다. .NET 앱과의 최상의 호환성을 위해 ‘ASP.NET Core 런타임’과 ‘데스크톱 런타임’을 모두 설치하는 것이 좋습니다.

SDK 정보

SDK는 .NET 앱과 라이브러리를 빌드하고 게시하는 데 사용됩니다. SDK를 설치하면 ASP.NET Core, 데스크톱 및 .NET Core의 세 가지 런타임이 모두 포함됩니다.

Arm 기반 Windows PC

다음 섹션에서는 Arm 기반 Windows PC에 .NET을 설치할 때 고려해야 할 사항에 대해 설명합니다.

지원되는 내용

다음 표에서는 Arm 기반 Windows PC에서 지원되는 .NET 버전을 설명합니다.

.NET 버전 아키텍처 SDK) 런타임 경로 충돌
7 Arm64
7 X64
6 Arm64
6 X64
5 Arm64
5 X64
3.1 Arm64 아니요 해당 없음
3.1 X64

.NET 6부터 x64 및 Arm64 버전의 .NET SDK는 서로 독립적으로 존재합니다. 새 버전이 릴리스되면 각 아키텍처 설치를 업그레이드해야 합니다.

경로 차이

Arm 기반 Windows PC에서는 모든 Arm64 버전의 .NET이 일반 C:\Program Files\dotnet\ 폴더에 설치됩니다. 그러나 x64 버전의 .NET 6 SDK 또는 .NET 7 SDK를 설치하면 C:\Program Files\dotnet\x64\ 폴더에 설치됩니다.

경로 충돌

.NET 6부터 x64 .NET SDK는 이전 섹션에 설명된 대로 자체 디렉터리에 설치됩니다. 이렇게 하면 .NET SDK의 Arm64 및 x64 버전이 동일한 컴퓨터에 존재할 수 있습니다. 그러나 6 이전의 x64 SDK는 지원되지 않으며 Arm64 버전 C:\Program Files\dotnet\ 폴더와 동일한 위치에 설치됩니다. 지원되지 않는 x64 SDK를 설치하려는 경우 먼저 Arm64 버전을 제거해야 합니다. 반대의 경우도 마찬가지입니다. Arm64 버전을 설치하려면 지원되지 않는 x64 SDK를 제거해야 합니다.

경로 변수

.NET SDK의 x64 및 Arm64 버전이 모두 설치된 경우 변수와 같은 PATH 시스템 경로에 .NET을 추가하는 환경 변수를 변경해야 할 수 있습니다. 또한 일부 도구는 환경 변수를 DOTNET_ROOT 사용하며 적절한 .NET SDK 설치 폴더를 가리키도록 업데이트해야 합니다.

종속성

다음 Windows 버전은 .NET 7에서 지원됩니다.

참고

+ 기호는 최소 버전을 나타냅니다.

OS 버전 아키텍처
Windows 11 21H2 이상 x64, Arm64
Windows 10 클라이언트 1607 이상 x64, x86, Arm64
Windows 클라이언트 7 SP1+, 8.1 x64, x86
Windows Server 2012+ x64, x86
Windows Server Core 2012+ x64, x86
Nano 서버 1809 이상 X64

.NET 7 지원 운영 체제, 배포 및 수명 주기 정책에 대한 자세한 내용은 .NET 7 지원 OS 버전을 참조하세요.

Windows 7 / Vista / 8.1 / Server 2008 R2 / Server 2012 R2

다음과 같은 Windows 버전에 .NET SDK 또는 런타임을 설치할 경우 종속성이 더 필요합니다.

운영 체제 사전 요구 사항
Windows 7 SP1 ESU - Microsoft Visual C++ 2015-2019 재배포 가능 64비트 / 32비트
- KB3063858 64비트 / 32비트
- Microsoft Root Certificate Authority 2011(.NET Core 2.1 오프라인 설치 관리자만 해당)
Windows Vista SP 2 Microsoft Visual C++ 2015-2019 재배포 가능 64비트 / 32비트
Windows 8.1 Microsoft Visual C++ 2015-2019 재배포 가능 64비트 / 32비트
Windows Server 2008 R2 Microsoft Visual C++ 2015-2019 재배포 가능 64비트 / 32비트
Windows Server 2012 Microsoft Visual C++ 2015-2019 재배포 가능 64비트 / 32비트
Windows Server 2012 R2 Microsoft Visual C++ 2015-2019 재배포 가능 64비트 / 32비트

다음 dll 중 하나와 관련된 오류를 수신하는 경우에도 이전 요구 사항이 필요합니다.

  • api-ms-win-crt-runtime-l1-1-0.dll
  • api-ms-win-cor-timezone-l1-1-0.dll
  • hostfxr.dll

Docker

컨테이너는 호스트 시스템의 나머지 부분으로부터 애플리케이션을 격리하는 경량 방식을 제공합니다. 동일한 머신에 있는 컨테이너는 커널만 공유하고 애플리케이션에 주어진 리소스를 사용합니다.

.NET은 Docker 컨테이너에서 실행할 수 있습니다. 공식 .NET Docker 이미지는 MCR(Microsoft Container Registry)에 게시되며 Microsoft .NET Docker Hub 리포지토리에서 찾을 수 있습니다. 각 리포지토리에는 사용할 수 있는 .NET(SDK 또는 Runtime)과 OS가 다양하게 조합된 이미지가 포함되어 있습니다.

Microsoft는 특정 시나리오를 위한 맞춤형 이미지를 제공합니다. 예를 들어 ASP.NET Core 리포지토리는 프로덕션에서 ASP.NET Core 앱을 실행하기 위해 빌드된 이미지를 제공합니다.

Docker 컨테이너에서 .NET 사용에 대한 자세한 내용은 .NET 및 Docker 소개Samples(샘플)를 참조하세요.

문제 해결

.NET SDK를 설치한 후 .NET CLI 명령을 실행하는 데 문제가 발생할 수 있습니다. 이 섹션에서는 이러한 일반적인 문제를 수집하고 솔루션을 제공합니다.

설치된 .NET Core SDK를 찾을 수 없습니다.

x86(32비트) 및 x64(64비트) 버전의 .NET SDK를 모두 설치했을 가능성이 큽니다. 이는 명령을 실행할 dotnet 때 x64 버전으로 확인되어야 할 때 x86 버전으로 확인되기 때문에 충돌을 일으킵니다. 일반적으로 x64 버전을 먼저 확인하도록 변수를 조정하여 %PATH% 이 문제를 해결합니다.

  1. 명령을 실행하여 두 버전이 모두 설치되어 있는지 확인합니다 where.exe dotnet . 이렇게 하면 Program Files\ 및 Program Files(x86)\ 폴더 모두에 대한 항목이 표시됩니다. 다음 예제와 같이 Program Files(x86)\ 폴더가 먼저 표시되면 올바르지 않으며 다음 단계로 계속 진행해야 합니다.

    > where.exe dotnet
    C:\Program Files (x86)\dotnet\dotnet.exe  
    C:\Program Files\dotnet\dotnet.exe
    

    올바르고 Program Files\가 먼저인 경우 이 섹션에서 설명하는 문제가 없으며 GitHub에서 .NET 도움말 요청 문제를 만들어야 합니다.

  2. Windows 단추를 누르고 검색에 "시스템 환경 변수 편집"을 입력합니다. 시스템 환경 변수 편집을 선택합니다.

    환경 변수 편집이 포함된 Windows 시작 메뉴

  3. 시스템 속성 창이 고급 탭까지 열립니다. 환경 변수를 선택합니다.

    Windows 시스템 속성 패널이 열립니다.

  4. 환경 변수 창의 시스템 변수 그룹에서 경로* 행을 선택한 다음 편집 단추를 선택합니다.

    사용자 및 시스템 변수가 있는 환경 변수 창입니다.

  5. 위로 이동아래로 이동 단추를 사용하여 C:\Program Files\dotnet\ 항목을 C:\Program Files (x86)\dotnet\위로 이동합니다.

    시스템의 환경 변수 목록입니다.

다음 단계