相信大家在visual studio上都遇到过下载nuget包时网络超时的问题,经常处在撸码2分钟,下包2个钟的尴尬情况。
解决办法基本上就是3个:
- 自己在nuget服务器上手动下载好包,再在vs中手动导入。该方法不太现实,因为现在的包几乎都有其依赖包及其依赖子包,要下载一个包,往往也需要下载一系列的其他包,手动将全部的依赖包都下载一遍费时费力不现实。
- 使用国内源,通常可行。但国内源不是实时与官方源更新的,可能导致某个包下载时,其依赖包得跳回到官方源才能进行下载,同样会有网络超时问题。或者国内源并不存在某依赖包。
- 设置代理,缺点是需要一个能科学上墙的代理服务器地址。
本文即通过设置代理的方法来解决nuget的超时问题,在%appdata%\NuGet\NuGet.Config文件中的config节点下加入
<add key=”http_proxy” value=”http://192.168.2.51:25000″ /> 即可,如下图所示。注:ip和端口需替换为自己的代理地址和端口。
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<config>
<add key="http_proxy" value="http://192.168.2.51:25000" />
</config>
<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="腾讯源" value="https://mirrors.cloud.tencent.com/nuget/" />
<add key="官方源" value="https://nuget.org/api/v2/" />
<add key="Microsoft Visual Studio Offline Packages" value="C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\" />
</packageSources>
</configuration>
版权声明:本文为hello443原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。