修改NuGet包默认存放位置

  • 修改NuGet包默认存放位置已关闭评论
  • 161 次浏览
  • A+
所属分类:.NET技术
摘要

默认情况下,NuGet下载的包存放在系统盘(C盘中),这样一来,时间长了下载的包越多,C盘占用的空间也就越多。


默认情况下,NuGet下载的包存放在系统盘(C盘中),这样一来,时间长了下载的包越多,C盘占用的空间也就越多。

?1、问题描述

默认情况下,NuGet下载的包存放在系统盘(C盘中,一般在路径C:Users用户.nugetpackages下),这样一来,时间长了下载的包越多,C盘占用的空间也就越多。

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

?2、修改默认存放位置的目的

目的很简单,当然是给C盘留出更多的空间来,同时方便自身对包进行自定义管理(如我们修改为D盘某个位置进行存储,假设我们重装了系统,我们只需要将配置重新指向D盘的这个位置即可,这样就不需要重新下载以前的那些包了)。

?3、具体修改

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

<config>      <add key="globalPackagesFolder" value="D:Net_ProgramNet_NuGetPackages" /> </config> 

其中的globalPackagesFolder就是我们全局设置的Key属性,对应的value值就是我们要设置存放的文件夹位置(此处我们修改为D盘的某个文件夹下)。

?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 SDKsNuGetPackages" />   </packageSources>   <activePackageSource>     <add key="nuget-v3" value="https://api.nuget.org/v3/index.json" />   </activePackageSource>   <config>      <add key="globalPackagesFolder" value="D:Net_ProgramNet_NuGetPackages" />   </config> </configuration> 

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

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

?5、删除C盘默认的存放文件

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

经过重新配置存放路径后,作者电脑的C盘清理了大概7.5G的文件,如下图所示:

修改NuGet包默认存放位置