我刚刚更新了公司机器上的NuGet软件包管理器。自从更新后,我无法添加任何包。我试图安装WebActivator,例如,得到以下错误:
PM> Install-Package WebActivator
Install-Package : The ServicePointManager does not support proxies with the https scheme.
At line:1 char:16
+ Install-Package <<<< WebActivator
+ CategoryInfo : NotSpecified: (:) [Install-Package], NotSupportedException
+ FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PowerShell.Commands.InstallPackageCommand
我该怎么做呢?
下面的工作帮助了我。请注意,我使用的是Windows 7, Visual Studio 2010 Professional, IE 9,并使用公司代理。您的步骤可能因环境而异:
- 转到C:Program Files (x86)Microsoft Visual Studio 10.0Common7IDE
- 打开devenv.exe.config进行编辑。
- 系统中。Net节点添加下面给出的代码。
- 关闭Visual Studio并重新打开。
- 检查是否显示RSS提要。
- 如果RSS提要部分提示输入密码,那么提供密码并保存。
- 如果事情仍然不起作用,运行fiddler并再次执行步骤4到6。(在某些情况下,在后台运行Fiddler也有帮助。见下面的链接)
放入devenv.exe.config的代码:
<defaultProxy useDefaultCredentials="true" enabled="true">
<proxy proxyaddress="http://ProxyServer:8080"/>
</defaultProxy>
这确实是一个基于以下两个讨论的hack,但它是有效的。
- 无法连接任何在线资源
- http://nuget.codeplex.com/discussions/242477
希望这能帮助到其他有类似问题的人。但我真的希望有更好的办法。硬编码代理服务器和端口似乎不是一个非常可维护的解决方案。此外,应该有另一种方法来使用NuGet包,如WebActivator和NuGet . mvc3 .
作为备份,如果你的代理只是HTTPS,你可以按照包下载说明从:没有Nuget包管理器的Nuget包?然后安装说明来自:如何在本地安装Nuget Package .nupkg文件
我没有使用公司代理,所以这个错误消息对我来说完全没有意义。不过,替换默认的NuGet包源是有帮助的。我这样做了:
- 进入NuGet设置并添加指向
http://nuget.org/api/v2/
的新包源(方案中没有s
) - 关闭默认源
- 启用我的新添加的源
现在,我不再得到错误信息了。果不其然!