如何使用命令行清除NuGet包caching?
我可以使用VS工具/选项/ NuGet包pipe理器/常规清除我的开发计算机的NuGet包caching:[清除包caching]button。
我想在命令行中这样做。 不幸的是,我找不到nuget.exe相关的命令行开关。
我错过了什么?
首先,从这里下载nuget命令行工具。
接下来,打开一个命令提示符并cd
到nuget.exe
下载目录。
您可以使用以下命令列出本地caching:
nuget locals all -list
您可以使用以下命令清除所有caching:
nuget locals all -clear
参考: https : //docs.nuget.org/consume/command-line-reference
nuget.exe实用程序没有此function,但是看到NuGetcaching只是您的计算机上的一个文件夹,您可以手动删除这些文件。 只需将其添加到您的batch file。
del %LOCALAPPDATA%\NuGet\Cache\*.nupkg /q
在Visual Studio 2017中,转至工具 – > Nuget Package Manager – > Package Manager Settings。 你可以find一个button“清除所有的NuGetcaching”
如果您正在使用.NET Core,则可以使用此命令清除caching,该命令应该在.NET Core tools 1.0中运行:
dotnet nuget locals all --clear
这增加了rmoore的答案。
下载并安装NuGet命令行工具。
- 从巧克力 – > https://chocolatey.org/packages/NuGet.CommandLine
- 从NuGet.org – > https://www.nuget.org/
列出我们所有的当地人。
$ 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\
我们现在可以手动删除这些或者像rmoorebuild议的那样,使用nuget locals all -clear
。
对我来说,我不得不在这里:
%userprofile%\.nuget\packages
请注意, dnx
对于feed结果有不同的caching
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
如果你需要清除构build服务器/代理的Nugetcaching,你可以在这里findNuget包的caching:
%windir%/ServiceProfiles/[account under build service runs]\AppData\Local\NuGet\Cache
示例:C:\ Windows \ ServiceProfiles \ NetworkService \ AppData \ Local \ NuGet \ Cache
你可以使用powershell(和我一样)。
例如:
rm $env:LOCALAPPDATA\NuGet\Cache\*.nupkg
或“安静”模式(没有错误信息):
rm $env:LOCALAPPDATA\NuGet\Cache\*.nupkg 2> $null