过去几周我一直有这个奇怪的问题。使用Visual Studio 2013 Premium Ed运行Windows 8。更新1. Visual Studio中的NuGet包管理器根本不起作用。我已经卸载/重新安装了它。我已经更新了我的本地NuGet.exe(运行2.5,现在是2.8.5) - 确保包含作为路径变量。即使从控制台,我也无法安装或更新任何软件包。控制台已确认运行2.8.50313.46。
从经理那里,它只是循环显示进度条,反复显示"检索信息.."。更新或在线没有显示任何内容。从已安装的软件包中,我可以毫无问题地查看解决方案中的所有内容。
以此post为管理员运行建议VS 2013 Express也不起作用。另一个post发现这是一个nuget.org问题,但在我的情况下,我的同事可以从包管理器(同一网络)中访问nuget.org而没有任何问题。编辑:我还在我的解决方案中删除了suo文件,然后在Visual Studio上打开它。
有关如何解决此问题的任何想法?
答案 0 :(得分:36)
我有同样的问题。卸载NuGet,重启VS2013,再安装NuGet再次为我工作。
您可以在VS中执行此操作,转到工具 - >扩展和更新。
答案 1 :(得分:14)
似乎nuget.org删除了对默认TLS版本(1.1)的支持。
在NuGet命令控件(PM)中运行此命令以使用1.2版:
[Net.ServicePointManager]::SecurityProtocol=[Net.ServicePointManager]::SecurityProtocol-bOR [Net.SecurityProtocolType]::Tls12
但是,这似乎是一个非永久性的解决方案,因此在重新启动Visual Studio之后,您需要再次运行命令。太糟糕了。
如果/找到永久解决方案,请通知!
答案 2 :(得分:5)
我已经尝试了其他与我有关的建议(例如,重新安装包管理器),但这些都没有用。奇怪的是,只需删除(取消选中)Nuget Package Manager的所有包源(工具 - >选项 - > Nuget包管理器 - >包源),单击确定,然后重新添加它们就可以解决问题。
答案 3 :(得分:2)
我遇到了同样的问题,它与我公司防火墙背后的代理设置有关。
你可以找到文件C:\ Program Files(x86)\ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ devenv.exe.config
VS更新4似乎删除了它们,不知道为什么。 更多详情:Visual Studio 2013 Update 4 - Tools and Extensions Not reaching the internet
答案 4 :(得分:1)
我有同样的经历,而我的原因是我当时正在运行一个http调试器(fiddler)。我杀死了小提琴手并重新启动了Visual Studio,但它确实有效。
答案 5 :(得分:1)
简而言之,你应该把
if(cacheDir.isDirectory()){
File[] files=cacheDir.listFiles();
for(File file:files){
if(null != file){
long lastModified = file.lastModified();
if (0 < lastModified) {
Date lastMDate = new Date(lastModified);
Date today = new Date(System.currentTimeMillis());
if (null != lastMDate && null != today) {
long diff = today.getTime() - lastMDate.getTime();
long diffDays = diff / (24 * 60 * 60 * 1000);
if (15 < diffDays) {
file.delete();
}
}
}
}
}
}
可以在<configuration>
<config>
<add key="http_proxy" value="http://my.proxy.address:port" />
<add key="http_proxy.user" value="mydomain\myUserName" />
<add key="http_proxy.password" value="base64encodedHopefullyEncryptedPassword" />
</config>
</configuration>
找到{p>到NuGet.config
(或当前.nuget dir,请参阅http://skolima.blogspot.ru/2012/07/nuget-proxy-settings.html)。
这可以通过运行以下命令来完成:
c:\Users\<your name>\AppData\Roaming\NuGet\
反对nuget.exe config -set http_proxy=http://my.proxy.address:port
nuget.exe config -set http_proxy.user=mydomain\myUserName
nuget.exe config -set http_proxy.password=mySuperSecretPassword
实际上只应通过命令设置密码,其他参数可以放入文件中。你也可以省略passw,然后nuget会在需要的时候问你。
答案 6 :(得分:1)
我遇到了同样的问题。打开“包管理器控制台”(查看-> 其他 Windows-> 包管理器控制台)对我有用。
答案 7 :(得分:0)
当我向2013年添加NuGet v3自定义存储库URL时(我想使用v2),这发生在我身上。
一旦我将其配置为使用v2 URL,我就很高兴。
答案 8 :(得分:0)
我遇到了同样的问题,我找到了解决问题的解决方案。如果未指定Windows http代理,则Nuget使用环境变量 http_proxy 。
如果您想了解代理设置,请以管理员身份打开提示并点击此命令:
netsh winhttp show proxy
控制面板 - &gt;高级系统设置 - &gt;环境变量
找到http_proxy并将其删除。
打开Visual Studio和工具 - &gt; NuGet包管理器 - &gt; NuGet Package Manager解决方案......
在左侧选择在线,您将最终看到在线列表。
来源帖子:Unable to load the service index for source (bad proxy settings)
答案 9 :(得分:0)
就我而言,我在nuget.org上有一些其他的NuGet包源,我刚刚删除了nuget.org。通过单击左下角的设置并取消选中除nuget.org之外的所有设置,现在它正常工作。