web-dev-qa-db-ja.com

コマンドラインを使ってNuGetパッケージのキャッシュをクリアするにはどうすればいいですか?

私の開発用コンピュータのNuGetパッケージキャッシュは、VS Tools/Options/NuGetパッケージマネージャ/ General:[Clear Package Cache]ボタンでクリアできます。

コマンドラインでこれをやりたいのですが。残念ながら、nuget.exeの関連コマンドラインスイッチが見つかりません。

私は何か見落としてますか?

349
g.pickardou

まず、 here からNuGetコマンドラインツールをダウンロードします。

次に、コマンドプロンプトを開き、nuget.exeをダウンロードしたディレクトリにcdを付けます。

このコマンドでローカルキャッシュを一覧表示できます。

nuget locals all -list

このコマンドですべてのキャッシュをクリアできます。

nuget locals all -clear

参照: https://docs.nuget.org/consume/command-line-reference

539
rm8x

Visual Studio 2017では、[ツール] - > [Nugetパッケージマネージャ] - > [パッケージマネージャの設定]に移動します。あなたは "すべてのNuGetキャッシュをクリアする"というボタンを見つけるかもしれません enter image description here

.NET Coreを使用している場合は、このコマンドでキャッシュをクリアできます。これは.NET Core tools 1.0以降で動作するはずです。

dotnet nuget locals all --clear

178
Ricky

Nuget.exeユーティリティにはこの機能はありませんが、NuGet Cacheが単にコンピュータ上のフォルダであることを確認したら、ファイルを手動で削除できます。これをバッチファイルに追加するだけです。

del %LOCALAPPDATA%\NuGet\Cache\*.nupkg /q
84
Kiliman

私のために私はここに行かなければならなかった:

%userprofile%\.nuget\packages
24
Bowofola

これはrmooreの答えに追加されます。

NuGetコマンドラインツールをダウンロードしてインストールします。

私たちの地元の人々をすべてリストしなさい。

$ nuget locals all -list
http-cache: C:\Users\MyUser\AppData\Local\NuGet\v3-cache
packages-cache: C:\Users\MyUser\AppData\Local\NuGet\Cache
global-packages: C:\Users\MyUser\.nuget\packages\

これらを手動で削除するか、rmooreが示唆するようにnuget locals all -clearを使用します。

17
Shaun Luttin

dnxはフィードhttpの結果に対して異なるキャッシュを持っていることに注意してください。

Microsoft .NET Development Utility Clr-x86-1.0.0-rc1-16231
   CACHE https://www.nuget.org/api/v2/
   CACHE http://192.168.148.21/api/odata/

あなたはそれをクリアすることができます

dnu clear-http-cache

今度は、コマンドが新しいdotnet cliツールに何が含まれるのかを調べる必要があります。

更新 ...そしてここにある:

dotnet restore --no-cache
10
KCD

3.x +キャッシュをクリアします(どちらかのコマンドを使用)

dotnet nuget locals http-cache --clear
nuget locals http-cache -clear

2.xキャッシュをクリアする(NuGet CLI 3.5以前のバージョンのみ)

nuget locals packages-cache -clear

グローバルパッケージフォルダを消去します(どちらかのコマンドを使用します)。

dotnet nuget locals global-packages --clear
nuget locals global-packages -clear

一時キャッシュをクリアする(どちらかのコマンドを使用)

dotnet nuget locals temp --clear
nuget locals temp -clear

プラグインキャッシュをクリアする(どちらかのコマンドを使う)

dotnet nuget locals plugins-cache --clear
nuget locals plugins-cache -clear

すべてのキャッシュをクリアする(どちらかのコマンドを使用)

dotnet nuget locals all --clear
nuget locals all -clear

現在Visual Studioで開いているプロジェクトで使用されているパッケージは、global-packagesフォルダーから消去されません。

詳細については

5
ElasticCode

ビルドサーバー/エージェントのNugetキャッシュをクリアする必要がある場合は、Nugetパッケージのキャッシュをここで見つけることができます。

%windir%/ServiceProfiles/[account under build service runs]\AppData\Local\NuGet\Cache

例:C:\ Windows\ServiceProfiles\NetworkService\AppData\Local\NuGet\Cache

5
khablander

あなたは(私と同じ)にPowerShellを使用することができます。

例えば:

rm $env:LOCALAPPDATA\NuGet\Cache\*.nupkg

または 'quiet'モード(エラーメッセージなし):

rm $env:LOCALAPPDATA\NuGet\Cache\*.nupkg 2> $null
3
honzakuzel1989

dotnet nuget locals all --clear

.NET Coreを使用している場合.

1
Jim Aho