どういうわけか、VS2012と.NET 4.5へのアップグレード中に、NuGetを混乱させることができました。パッケージマネージャー(およびパッケージフォルダー)に表示され、削除できないパッケージがあります(これらは、新しいバージョンで新しいパッケージ名に置き換えられたレガシーASP.NETNuGetパッケージであると思います。それぞれに[管理 ]ボタンしかありません。 -ただし、アンインストールボタンはありません。使用されている場所を確認すると、ソリューションのどのプロジェクトからも参照されていないことがわかりますか?アンインストールが表示されていませんか?
11 に答える
この回避策を見つけました。
- パッケージの復元と自動チェックを有効にする(オプション/パッケージマネージャー/一般)
- パッケージフォルダの内容全体を削除します(緊張している場合はごみ箱に入れてください!)
- ソリューションのNugetパッケージを管理する
- 復元ボタンをクリックします。
NuGetは、ソリューションで使用されているパッケージのみを復元します。最終的には、合理化された優れたパッケージのセットになります。
パッケージマネージャーコンソールをコマンド:で使用Uninstall-Package PackageId
して削除するか、ソリューションフォルダーの下の'packages'フォルダーからパッケージフォルダーを削除することができます。パッケージマネージャーコンソールの詳細については、http://docs.nuget.org/docs/reference/package-manager-console-powershell-referenceを参照してください。
まず、パッケージマネージャーコンソールを開きます。次に、ドロップダウンリストからプロジェクトを選択します。nugetパッケージをアンインストールするには、次のコマンドを実行します。
Get-Package
インストールしたすべてのパッケージを取得するため。
その後
Uninstall-Package PagedList.Mvc
---PagedList.MVCという名前のパッケージをアンインストールします
メッセージ
PM> Uninstall-Package PagedList.Mvc
Successfully removed 'PagedList.Mvc 4.5.0.0' from MCEMRBPP.PIR.
ソリューション内の複数のプロジェクトに適用されているNugetパッケージを削除/アンインストールする場合は、次の場所に移動します。
[ツール]->[Nugetパッケージマネージャー]->[ソリューションのNugetパッケージの管理]
「インストール済みパッケージ」がある左側の列で「すべて」を選択すると、インストール済みパッケージのリストとそれらの横にある「管理」ボタンが表示されます。
[管理]ボタンを選択すると、ポップアップが表示されます。プロジェクト名のチェックボックスをオフにして、[OK]をクリックします。
残りの作業パッケージマネージャーがあなたに代わってそれを行います。
VS2019>ツール>オプション>Nugetパッケージマネージャー>一般>[すべてのNugerキャッシュをクリア]をクリックします
Uninstall-Packageユーティリティを使用してパッケージを削除し、解決策の下でパッケージディレクトリから目的のパッケージを削除した場合(それでもエラーが発生する場合)、コードエディタで* .csprojファイルを開き、タグを手動で削除します。たとえば、NugetパッケージXamarin.Forms.Aliasを削除したかったので、これらの行を*.csprojファイルから削除しました。
そして最後に、(プロジェクトファイルを変更した後)Visual Studioでプロンプトが表示されたら、プロジェクトをリロードすることを忘れないでください。Visual Studio 2015で試しましたが、VisualStudio2010以降でも動作するはずです。
お役に立てれば。
別の方法は、ソリューションの任意のプロジェクトに削除する未使用のパッケージをインストールし、その後、それをアンインストールすると、Nugetもそれを削除します。
ここでは適切なアンインストーラーが必要です。
解決策1
PowerShellパイプラインを使用してパッケージを取得し、次のように1つのステートメントで削除します
Get-Package | Uninstall-Package
解決策2
選択したパッケージをアンインストールする場合は、次の手順に従ってください
GetPackages
パッケージのリストを取得するために使用します- Nimbleテキストソフトウェアをダウンロードする
- NimbleTextの出力をコピーします
GetPackages
(リストウィンドウの各行に対して) (
必要に応じて、カラムセパレータをに設定します- タイプ
Uninstall-Package $0
(パターンウィンドウを使用して置換) - 結果をコピーして、パッケージ管理コンソールに貼り付けます
それはすべての人々です。
1つのNuGetパッケージが別のNuGetパッケージを参照できます。したがって、パッケージ間の依存関係には十分注意してください。Googleマップパッケージをアンインストールした後、Newtonsoft、EntityFrameworkなどの基盤となるパッケージをアンインストールしました。
したがって、packagesフォルダから特定のパッケージを手動で削除する方が安全です。
多くの場合、パッケージマネージャーのコンソールウィンドウから、パッケージのインストールに使用したコマンドを使用して、そのパッケージをアンインストールできます。INSTALLコマンドをUNINSTALLに置き換えるだけです。
たとえば、PowerTCPTelnetをインストールするには、コマンドは次のとおりです。
Install-Package PowerTCPTelnet -Version 4.4.9
同じものをアンインストールするには、コマンドは次のとおりです。
Uninstall-Package PowerTCPTelnet -Version 4.4.9
Visual Studioオプションを使用する場合は、既存のVisualStudioソリューションからNugetパッケージを削除する方法を参照してください。
ステップ1:
Visual Studioで、[ツール]/[NuGetパッケージマネージャー]/[ソリューション用のNuGetパッケージの管理]に移動します…</p>
ステップ2:
現在のソリューションからプロジェクトのチェックを外します
ステップ3:
プロジェクトの選択を解除し、[OK]を押します