dotnet nuget why
この記事は、次のバージョンに適用されます: ✔️ .NET 8.0.4xx SDK 以降のバージョン
Name
dotnet nuget why
- 特定のパッケージの依存関係グラフを表示します。
構文
dotnet nuget why <PROJECT|SOLUTION> <PACKAGE> [-f|--framework <FRAMEWORK>]
dotnet nuget why -h|--help
説明
dotnet nuget why
コマンドは、特定のプロジェクトまたはソリューションの特定のパッケージの依存関係グラフを表示します。
.NET 9 SDK 以降では、.NET SDK で復元できないプロジェクトでコマンドを使用するために、プロジェクト ファイルの代わりに NuGet アセット ファイルを渡すことができます。
まず、Visual Studio でプロジェクトを復元するか、 msbuild.exe
します。
既定では、アセット ファイルはプロジェクトの obj\
ディレクトリにありますが、 msbuild.exe path\to\project.proj -getProperty:ProjectAssetsFile
を使用して場所を見つけることができます。
最後に、 dotnet nuget why path\to\project.assets.json SomePackage
を実行します。
バージョン 9.0.200 以降、このコマンドでは、RID とフレームワークの組み合わせごとに個別の依存関係ツリーを生成することで、ランタイム識別子 (RID) 固有のパッケージのサポートが導入されました。
たとえば、プロジェクトがwin-x64
RID を使用してnet9.0
をターゲットにしている場合、コマンドはnet9.0/win-x64
とnet9.0
のツリーを生成します。
引数
PROJECT|SOLUTION
対象のプロジェクトまたはソリューションのファイル。 ディレクトリが指定されている場合、コマンドはプロジェクトまたはソリューション ファイルのディレクトリを検索します。 複数のプロジェクトまたはソリューションが見つかった場合は、エラーがスローされます。
PACKAGE
依存関係グラフで検索するパッケージ名。
[オプション]
-f|--framework <FRAMEWORK>
依存関係グラフが表示されるターゲット フレームワーク。 複数の
--framework
オプションを渡して、複数のフレームワークのグラフを表示できます。
-?|-h|--help
コマンドの使用方法を示した説明を出力します。
例
特定のソリューションのパッケージ "System.Text.Json" の依存関係グラフを表示します。
dotnet nuget why .\DotnetNuGetWhyPackage.sln System.Text.Json
1 つのプロジェクトのパッケージ "System.Text.Json" の依存関係グラフを表示します。
dotnet nuget why .\DotnetNuGetWhyPackage.csproj System.Text.Json
特定のターゲット フレームワークの依存関係グラフを表示します。
dotnet nuget why .\DotnetNuGetWhyPackage.csproj System.Text.Json --framework net6.0
.NET