- A+
所属分类:.NET技术
默认情况下,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>
我们每个电脑上的全局配置文件中的内容可能不一样,这里我们只需要关心节点
配置好后,我们重新打开VS去下载一个包,即可看到包已经存放到我们新配置的文件夹下了。
?5、删除C盘默认的存放文件
当我们配置好后,就可以删除掉C盘中默认的存放文件了(C:Users用户.nugetpackages直接删除掉即可)。
经过重新配置存放路径后,作者电脑的C盘清理了大概7.5G的文件,如下图所示: