dotnet list package

이 문서의 적용 대상: ✔️ .NET Core 3.1 SDK 이상 버전

이름

dotnet list package - 프로젝트 또는 솔루션에 대한 패키지 참조를 나열합니다.

개요

dotnet list [<PROJECT>|<SOLUTION>] package [--config <SOURCE>]
    [--deprecated]
    [-f|--framework <FRAMEWORK>] [--highest-minor] [--highest-patch]
    [--include-prerelease] [--include-transitive] [--interactive]
    [--outdated] [--source <SOURCE>] [-v|--verbosity <LEVEL>]
    [--vulnerable]
    [--format <console|json>]
    [--output-version <VERSION>]

dotnet list package -h|--help

설명

dotnet list package 명령은 특정 프로젝트 또는 솔루션에 대한 모든 NuGet 패키지 참조를 나열하는 편리한 옵션을 제공합니다. 이 명령을 처리하는 데 필요한 자산을 포함하려면 먼저 프로젝트를 빌드해야 합니다. 다음 예제에서는 SentimentAnalysis 프로젝트에 대한 dotnet list package 명령의 출력을 보여 줍니다.

Project 'SentimentAnalysis' has the following package references
   [netcoreapp2.1]:
   Top-level Package               Requested   Resolved
   > Microsoft.ML                  1.4.0       1.4.0
   > Microsoft.NETCore.App   (A)   [2.1.0, )   2.1.0

(A) : Auto-referenced package.

요청됨 열은 프로젝트 파일에 지정된 패키지 버전을 나타내고 이 버전은 범위일 수 있습니다. 해결됨 열에는 프로젝트가 현재 사용 중이고 항상 단일 값인 버전이 나열됩니다. 이름 오른쪽에 (A)를 표시하는 패키지는 프로젝트 설정(Sdk 형식, <TargetFramework> 또는 <TargetFrameworks> 속성)에서 유추된 암시적 패키지 참조를 나타냅니다.

--outdated 옵션을 사용하여 프로젝트에서 사용 중인 패키지에 사용 가능한 최신 버전이 있는지 확인합니다. 기본적으로 해결된 버전이 사전 릴리스 버전이 아닌 경우 --outdated는 안정적인 최신 패키지를 나열합니다. 최신 버전을 나열할 때 사전 릴리스 버전을 포함하려면 --include-prerelease 옵션도 지정합니다. 패키지를 최신 버전으로 업데이트하려면 dotnet add package를 사용합니다.

다음 예에서는 이전 예제와 동일한 프로젝트에 대한 dotnet list package --outdated --include-prerelease 명령의 출력을 보여 줍니다.

The following sources were used:
   https://api.nuget.org/v3/index.json
   C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\

Project `SentimentAnalysis` has the following updates to its packages
   [netcoreapp2.1]:
   Top-level Package      Requested   Resolved   Latest
   > Microsoft.ML         1.4.0       1.4.0      1.5.0-preview

프로젝트에 전이적 종속성이 있는지 확인해야 하는 경우에는 --include-transitive 옵션을 사용합니다. 다른 패키지에 의존하는 패키지를 프로젝트에 추가하면 전이적 종속성이 발생합니다. 다음 예제에서는 최상위 패키지 및 자신이 종속된 패키지를 표시하는, HelloPlugin 프로젝트에 대한 dotnet list package --include-transitive 명령 실행의 출력을 보여 줍니다.

Project 'HelloPlugin' has the following package references
   [netcoreapp3.0]:
   Transitive Package      Resolved
   > PluginBase            1.0.0

인수

PROJECT | SOLUTION

작업할 프로젝트 또는 솔루션 파일입니다. 지정하지 않으면 이 명령은 현재 디렉터리에서 검색합니다. 둘 이상의 솔루션 또는 프로젝트가 있으면 오류가 throw됩니다.

옵션

  • --config <SOURCE>

    최신 패키지를 검색할 때 사용할 NuGet 소스입니다. --outdated 옵션이 필요합니다.

  • --deprecated

    사용되지 않는 패키지를 표시합니다.

  • -f|--framework <FRAMEWORK>

    지정된 대상 프레임워크에 적용 가능한 패키지만 표시합니다. 여러 프레임워크를 지정하려면 옵션을 여러 번 반복합니다. 예: --framework net6.0 --framework netstandard2.0 옵션의 짧은 형식(-f)은 .NET 9 SDK부터 사용할 수 있습니다.

  • -?|-h|--help

    명령을 사용하는 방법에 대한 설명을 출력합니다.

  • --highest-minor

    최신 패키지를 검색할 때 주 버전 번호가 일치하는 패키지만 고려합니다. --outdated 또는 --deprecated 옵션이 필요합니다.

  • --highest-patch

    최신 패키지를 검색할 때 주 및 부 버전 번호가 일치하는 패키지만 고려합니다. --outdated 또는 --deprecated 옵션이 필요합니다.

  • --include-prerelease

    최신 패키지를 검색할 때 사전 릴리스 버전을 가진 패키지를 고려합니다. --outdated 또는 --deprecated 옵션이 필요합니다.

  • --include-transitive

    최상위 패키지 이외에 전이적 패키지를 나열합니다. 이 옵션을 지정하면 최상위 패키지가 종속된 패키지 목록을 가져옵니다.

  • --interactive

    명령이 중지되고 사용자 입력 또는 작업을 대기할 수 있도록 허용합니다. 예를 들어 인증을 완료합니다. .NET Core 3.0 SDK 이후 사용할 수 있습니다.

  • --outdated

    최신 버전을 사용할 수 있는 패키지를 나열합니다.

  • -s|--source <SOURCE>

    최신 패키지를 검색할 때 사용할 NuGet 소스입니다. --outdated 또는 --deprecated 옵션이 필요합니다.

  • -v|--verbosity <LEVEL>

    명령의 세부 정보 표시 수준을 설정합니다. 허용되는 값은 q[uiet], m[inimal], n[ormal], d[etailed], diag[nostic]입니다. 기본값은 minimal입니다. 자세한 내용은 LoggerVerbosity를 참조하세요.

  • --vulnerable

    알려진 취약성이 있는 패키지를 나열합니다. --deprecated 또는 --outdated 옵션과 함께 사용할 수 없습니다. Nuget.org는 취약성에 대한 정보 원본입니다. 자세한 내용은 취약성NuGet 패키지에서 보안 취약성을 검사하는 방법을 참조하세요.

  • --format <console|json>

    보고서 출력 형식을 설정합니다. 허용되는 값은 console, json입니다. 기본값은 console입니다. .NET SDK 7.0.200부터 사용할 수 있습니다.

  • --output-version <VERSION>

    보고서 출력 버전을 설정합니다. 허용되는 값은 1입니다. 기본값은 1입니다. --format json 옵션이 필요합니다. 새 JSON 버전을 사용할 수 있으면 명령은 기본적으로 새 형식을 생성합니다. 이 옵션을 사용하면 명령이 이전 형식을 생성하도록 지정할 수 있습니다. .NET SDK 7.0.200부터 사용할 수 있습니다.

예제

  • 특정 프로젝트의 패키지 참조를 나열합니다.

    dotnet list SentimentAnalysis.csproj package
    
  • 사전 릴리스 버전을 포함하여 최신 버전을 사용할 수 있는 패키지 참조를 나열합니다.

    dotnet list package --outdated --include-prerelease
    
  • 특정 대상 프레임워크에 대한 패키지 참조를 나열합니다.

    dotnet list package --framework netcoreapp3.0
    
  • 컴퓨터가 읽을 수 있는 json 출력 형식으로 패키지 참조를 나열합니다.

    dotnet list package --format json
    
  • 컴퓨터가 읽을 수 있는 json 출력 형식으로 특정 대상 프레임워크에 대한 패키지 참조를 나열합니다.

    dotnet list package --framework netcoreapp3.0 --format json
    
  • 전이적 종속성 및 취약성 세부 정보를 포함하여 컴퓨터가 읽을 수 있는 패키지 참조의 json 출력을 파일에 저장합니다.

    dotnet list package --include-transitive --vulnerable --format json >> dependencyReport.json
    
  • 출력 버전 1을 사용하여 컴퓨터가 읽을 수 있는 json 출력 형식으로 패키지 참조를 나열합니다.

    dotnet list package --format json --output-version 1