VS2022修改NuGet包的缓存位置

前言

由于C盘的空间有限,NuGet的包位置默认又在C盘,会占用C盘大量空间,所以需要修改包的默认位置。

方法有两种,一种是修改配置文件,另一种是添加环境变量。不过添加环境变量的方法只在高版本有效。

方法一:修改配置文件

将缓存路径设置为 E:\nuget

配置文件共有三处,添加下面的内容即可

1、C:\Users\用户名\AppData\Roaming\NuGet\NuGet.Config

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
  </packageSources>
  <config>
     <add key="globalPackagesFolder" value="E:\nuget" />
  </config>
</configuration>

2、C:\Program Files (x86)\NuGet\Config\Microsoft.VisualStudio.Offline.config

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <add key="Microsoft Visual Studio Offline Packages" value="E:\nuget\"/>
  </packageSources>
  <config>
     <add key="globalPackagesFolder" value="E:\nuget" />
  </config>
</configuration>

3、C:\Program Files (x86)\NuGet\Config\Microsoft.VisualStudio.FallbackLocation.config

<?xml version="1.0" encoding="utf-8"?>
<!--<auto-generated>
    This code was generated by a tool.
    Changes to this file may cause incorrect behavior and will be lost if
    the code is regenerated.
</autogenerated>-->
<configuration>
  <fallbackPackageFolders>
    <add key="Microsoft Visual Studio Fallback Folder" value="D:\Microsoft Visual Studio\2019\Shared\NuGetPackages" />
  </fallbackPackageFolders>
  <config>
     <add key="globalPackagesFolder" value="E:\nuget" />
  </config>
</configuration>

方法二:添加环境变量

使用 NUGET_PACKAGES 环境变量代替 globalPackagesFolder 或 repositoryPath
使用 NUGET_HTTP_CACHE_PATH 环境变量替代 http-cache
使用 NUGET_PLUGINS_CACHE_PATH 环境变量替代 plugins-cache

下面的方法可以查看当前的配置

# 查看所有文件夹位置
dotnet nuget locals all --list
# 清除所有缓存
dotnet nuget locals all --clear
上一篇
下一篇