我可以清除我的开发计算机的NuGet包缓存使用Visual Studio菜单工具→选项→NuGet包管理器→通用:清除包缓存按钮。
我希望在命令行上执行此操作。不幸的是,我找不到nuget.exe的相关命令行开关。
我错过什么了吗?
我可以清除我的开发计算机的NuGet包缓存使用Visual Studio菜单工具→选项→NuGet包管理器→通用:清除包缓存按钮。
我希望在命令行上执行此操作。不幸的是,我找不到nuget.exe的相关命令行开关。
我错过什么了吗?
当前回答
NuGet .exe工具没有这个功能,但看到NuGet缓存只是你电脑上的一个文件夹,你可以手动删除文件。只需添加到你的批处理文件:
del %LOCALAPPDATA%\NuGet\Cache\*.nupkg /q
其他回答
这增加了rm8x的答案。
下载并安装NuGet命令行工具。
来自Chocolatey→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\
我们现在可以手动删除这些,或者像rm8x建议的那样,使用nuget locals all -clear。
NuGet .exe工具没有这个功能,但看到NuGet缓存只是你电脑上的一个文件夹,你可以手动删除文件。只需添加到你的批处理文件:
del %LOCALAPPDATA%\NuGet\Cache\*.nupkg /q
如果你需要为你的构建服务器/代理清除NuGet缓存,你可以在这里找到NuGet包的缓存:
%windir%/ServiceProfiles/[在构建服务下运行的帐户]\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
首先,从这里下载NuGet命令行工具。
接下来,打开命令提示符并cd到nuget.exe下载到的目录。
你可以用这个命令列出本地缓存:
nuget locals all -list
你可以用这个命令清除所有的缓存:
nuget locals all -clear
参考:https://docs.nuget.org/consume/command-line-reference