NuGet CLI를 사용하여 NuGet 패키지 관리

CLI 도구를 사용하여 nuget.exe Visual Studio 프로젝트 및 솔루션에서 NuGet 패키지를 관리할 수 있습니다. 이 문서에서는 NuGet 패키지를 관리하기 위한 가장 일반적인 NuGet CLI 명령에 대해 설명합니다. 이러한 모든 명령은 Windows에서 작동하며 대부분의 명령은 Mac 및 Mono를 사용하는 Linux에서 작동합니다.

NuGet CLI는 .NET Framework 및 비 SDK 스타일 프로젝트(예: .NET Standard 라이브러리를 대상으로 하는 비 SDK 스타일 프로젝트)에서 실행됩니다. NuGet CLI 명령은 패키지 참조를 나열하는 project packages.config 파일을 사용할 수 있습니다. 패키지 참조에 packages.config 대신 사용하는 PackageReference 비 SDK 스타일 프로젝트의 경우 dotnet CLI를 대신 사용합니다.

참고 항목

packages.config를 사용하는 대부분의 비 SDK 스타일 프로젝트의 경우 packages.config를 PackageReference로 마이그레이션한 다음 NuGet CLI 대신 dotnet CLI를 사용하여 패키지를 관리하는 것이 가장 좋습니다. 그러나 C++ 또는 ASP.NET 프로젝트를 마이그레이션할 수는 없습니다.

대부분의 명령에서 NuGet CLI 도구는 명령에서 다른 위치를 지정하지 않는 한 현재 디렉터리를 사용합니다. NuGet CLI 명령을 실행하려면 명령줄을 열고 프로젝트 파일이 포함된 디렉터리로 전환합니다.

명령 및 해당 인수의 전체 목록은 NuGet CLI 참조를 참조하세요.

필수 조건

nuget.org NuGet CLI를 다운로드합니다. nuget.exe 파일을 적절한 디렉터리에 저장하고 디렉터리가 PATH 환경 변수에 있는지 확인합니다.

참고 항목

Windows용 winget 도구 또는 macOS용 Homebrew 를 사용할 수도 있습니다.

NuGet CLI 버전을 확인하려면 명령줄을 열고 실행 nuget help하거나 위로 스크롤할 필요가 없도록 합니다 nuget help | more. 도움말 출력의 첫 번째 줄에는 버전이 표시됩니다.

패키지 설치

NuGet CLI 설치 명령은 지정된 NuGet 패키지를 다운로드하고 설치합니다.

Important

install 명령은 프로젝트 파일 또는 packages.config 파일을 수정하지 않습니다. installrestore 명령은 디스크에 패키지만 추가하지만 프로젝트에 종속성을 추가하지는 않습니다. 프로젝트 종속성을 추가하려면 Visual Studio 패키지 관리자 UI 또는 패키지 관리자 콘솔을 통해 패키지를 추가한 다음 실행 install 하거나 실행합니다restore.

-OutputDirectory 이 옵션을 사용하여 특정 디렉터리에 패키지를 설치합니다. 출력 디렉터리를 install 지정하지 않으면 현재 디렉터리를 사용합니다.

nuget install <packageID | configFilePath> -OutputDirectory <outputDirectory>

예를 들어 패키지 하위 디렉터리에 패키지를 설치 Newtonsoft.json 하려면 다음 명령을 사용합니다.

nuget install Newtonsoft.Json -OutputDirectory packages

설치할 패키지를 지정하는 대신 현재 또는 다른 디렉터리에 기존 packages.config 파일을 지정할 수 있습니다. 이 install 명령은 packages.config 파일에 나열된 모든 패키지를 설치합니다.

nuget install packages.config

예를 들어 다음 명령은 구성 하위 디렉터리의 packages.config나열된 모든 패키지를 패키지 하위 디렉터리에 설치합니다.

nuget install config\packages.config -OutputDirectory packages

특정 버전의 패키지 설치

다른 버전을 지정하지 않는 한 이 install 명령은 패키지의 최신 버전을 설치합니다. 특정 버전의 패키지를 설치하려면 다음 옵션을 사용합니다 -Version .

nuget install <packageID | configFilePath> -Version <version>

예를 들어 패키지 버전 12.0.1을 설치하려면 다음을 Newtonsoft.json 사용합니다.

nuget install Newtonsoft.Json -Version 12.0.1

패키지 나열

목록 명령을 사용하여 패키지 폴더에 설치된 패키지 목록을 표시합니다. 이 -Source 옵션을 사용하여 목록을 제한합니다.

nuget list -Source <source>

예를 들어 MyProject패키지 하위 디렉터리에 패키지를 나열하려면 다음을 사용합니다.

nuget list -Source C:\Users\%USERNAME%\source\repos\MyProject\packages

검색어를 사용하여 패키지 이름, 태그 또는 설명을 검색할 수도 있습니다.

nuget list <"search term"> -Source <source>

모든 패키지 업데이트

업데이트 명령을 사용하여 project packages.config 파일의 모든 패키지를 사용 가능한 최신 버전으로 업데이트합니다. 실행update하기 전에 실행하는 restore 것이 가장 좋습니다.

nuget update

패키지 제거

패키지를 제거하려면 프로젝트 폴더에서 해당 패키지를 삭제합니다. 패키지를 다시 설치하려면 또는 install 명령을 사용합니다restore.

디스크에서 패키지를 삭제해도 프로젝트, packages.config 또는 NuGet.Config 파일이 업데이트되지 않습니다. 패키지를 제거하는 가장 좋은 방법은 Visual Studio 패키지 관리자 UI 또는 패키지 관리자 콘솔을 사용하는 것입니다.

패키지 복원

NuGet CLI 복원 명령은 누락된 패키지를 다운로드하고 설치합니다. 이 명령은 패키지 참조에 PackageReference 또는 packages.config를 사용하는 프로젝트에서 작동합니다.

마찬가지로 install명령은 디스크에 restore 만 패키지를 추가하지만 프로젝트 파일 또는 packages.config를 수정하지는 않습니다. 프로젝트 종속성을 추가하려면 Visual Studio 패키지 관리자 UI 또는 콘솔을 사용합니다.

패키지를 복원하려면 다음 명령을 실행합니다.

nuget restore <projectPath>

restore 명령은 지정된 프로젝트 경로에서 솔루션 파일 또는 package.config 파일을 사용합니다.

예를 들어 현재 디렉터리에서 MySolution.sln 대한 모든 패키지를 복원하려면 다음을 실행합니다.

nuget restore MySolution.sln

참고 항목

사용하는 PackageReference비 SDK 스타일 프로젝트의 경우 msbuild -t:restore를 사용하여 패키지를 복원합니다.

자세한 내용은 패키지 복원을 참조 하세요.

다음 단계