C# で貢献しているプロジェクトの新しいバージョンを引っ張ってくると、どうやらバージョンが古い。Issue とか上げてみたんだけど、キャッシュをクリアしてと言われた。
あぁ、、、またやってしまった。こんなもんに時間をかけてアホやなと思うので、記録しておく。余裕で数時間ふっとんだ。
nuget のクリアの方法
さて、nuget のキャッシュのクリアだが、次のリファレンスがある。
global-packages
%userprofile%\.nuget\packages
おなじみの場所で、全てのNugetのパッケージがダウンロードされる場所。ディレクトリができているので消せばよい。今回はこれでもダメだった。
http-cache
%localappdata%\NuGet\v3-cache
NUGET_HTTP_CACHE_PATH
環境変数が設定されている場合はそちらを使う。
Visual Studio Package Manager と、dotnet
ツールが使う予定のところ。ここのキャッシュは30分らしいが今回はここもglobal-packages
に加えてこちらもクリアしないと有効にならなかった。
temp
%temp%\NugetScratch
NuGet がオペレーションの一時ファイルを保存するところ
plugins-cache
%localappdata%\NuGet\plugins-cache
NUGET_PLUGINS_CACHE_PATH
環境変数が設定されている場合はそちら
NuGetが、オペレーション要求の結果を保存する場所
確認のプロセス
Method Not Found など、古いバージョンに起因する問題が起きたら、キャッシュを疑ったほうがよさそう。自分はいつもドタバタしてて、ひとよりアホみたいに時間使うことがおおいんだけど、自分にメソッドを適用したらましになるかな?
- VS のクリアと再ビルド
- 上記の nuget のキャッシュのクリア
- テストの実施
これを最低限やってみるようにしよう。