Microsoftは、「Visual Studio」でNuGetパッケージの依存関係の競合に対処するための実験的な拡張機能「NuGetSolver」を公開した。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
Microsoftは2024年1月16日(米国時間)、「Visual Studio 2022」でNuGetパッケージの依存関係の競合に対処するための実験的な拡張機能「NuGetSolver」を公開した。
NuGetは、広く使われている.NET用パッケージマネジャー。NuGetSolverは、プロジェクトにおけるNuGetパッケージの依存関係の競合を自動的に解決することを目的としており、以下のような最も一般的なNuGetエラーや警告に効率的に対処する。
NuGetSolverは、Visual Studio Marketplaceからダウンロード、インストールできる。Visual Studioのソリューションエクスプローラーで右クリックし、「Resolve Dependency Conflicts」(依存関係の競合を解決)を選択して起動する。
NuGetSolverは依存関係を調査し、競合を解決する提案を生成できるかどうかを計算する。提案を生成すると、現在の状態と提案を表示する。
提案が満足のいくものなら、「Apply fix」をクリックして適用し、ソリューションを再構築して、依存関係の競合が解決されたかどうかを確認する。
なお、Microsoftは、リポジトリのソース管理を有効にすることを推奨している。そうすれば、NuGetSolverによる変更を、必要に応じて簡単に元に戻せるためだ。
NuGetSolverは、ソリューションに依存関係の競合がない場合でも実行可能であり、変更を最小限に抑えながら依存関係をアップグレードする。NuGet Package Managerを使ってパッケージを1つずつアップグレードするのは時間がかかり、他の依存関係の制約で失敗することもあるため、NuGetSolverはより効率的な代替手段になると、Microsoftは説明している。
NuGetSolverは実験的な拡張機能であり、さまざまな制約がある。その一部を以下に示す。
Copyright © ITmedia, Inc. All Rights Reserved.