VS修改NuGet包默认存放位置

发布时间 2023-05-10 11:09:25作者: 糯米白白

1、问题描述
默认情况下,NuGet下载的包存放在系统盘(C盘中,一般在路径C:\Users\用户.nuget\packages下),这样一来,时间长了下载的包越多,C盘占用的控件也就越多。

那么有没有办法将默认的下载位置修改掉呢?答案肯定是可以的。

2、修改默认存放位置的目的
目的很简单,当然是给C盘留出更多的空间来。

3、具体修改
我们先找到NuGet的全局配置文件NuGet.Config,一般存放在路径C:\Users\用户\AppData\Roaming\NuGet\NuGet.Config下,打开该文件,我们在configuration节点下添加如下配置即可:

<config> 
  <add key="globalPackagesFolder" value="D:\Net_Program\Net_NuGet\Packages" />
</config>

其中的globalPackagesFolder就是我们全局设置的Key属性,对应的value值就是我们要设置存放的文件夹位置。

4、全局配置文件NuGet.Config完整代码
完整的配置代码如下所示:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageRestore>
    <add key="enabled" value="True" />
    <add key="automatic" value="True" />
  </packageRestore>
  <bindingRedirects>
    <add key="skip" value="False" />
  </bindingRedirects>
  <packageManagement>
    <add key="format" value="0" />
    <add key="disabled" value="False" />
  </packageManagement>
  <packageSources>
    <add key="nuget-v3" value="https://api.nuget.org/v3/index.json" />
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
    <add key="nuget.org" value="https://www.nuget.org/api/v2/" />
    <add key="NuGet-Azure" value="https://nuget.cdn.azure.cn/v3/index.json" />
    <add key="Microsoft Visual Studio Offline Packages" value="C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\" />
  </packageSources>
  <activePackageSource>
    <add key="nuget-v3" value="https://api.nuget.org/v3/index.json" />
  </activePackageSource>
  <config> 
    <add key="globalPackagesFolder" value="D:\Net_Program\Net_NuGet\Packages" />
  </config>
</configuration>

我们每个电脑上的全局配置文件中的内容可能不一样,这里我们只需要关心节点→globalPackagesFolder即可。

配置好后,我们重新打开VS去下载一个包,即可看到包已经存放到我们新配置的路径下了。

5、删除C盘默认的存放文件
当我们配置好后,就可以删除掉C盘中默认的存放文件了(C:\Users\用户.nuget\packages直接删除掉即可)。

原文链接:https://blog.csdn.net/qubernet/article/details/128564551