2014-10-28 108 views
20

我有一个项目,我无法编译。当我尝试这样做时,出现以下错误:Nuget版本不正确?

The 'Microsoft.Bcl.Build 1.0.14' package requires NuGet client version '2.8.1' or above, but the current NuGet version is '2.7.41115.310'. 

通常情况下,这很简单。搜索后,我发现本指南: http://www.daimto.com/package-requires-nuget-client-version-x/

这解释了我可以如何升级我的Nuget客户端版本。但是,当我遵循这些步骤时,我发现我已经在使用最新版本的Nuget:2.8.5

由于某些原因,Visual Studio 2013 Ultimate使用的是旧版本,我不明白为什么。

我的安装Visual Studio Ultimate 2013是卸载Visual Studio for Web Express 2012后的全新安装。以前的版本给了我相当多的问题,因此我将其删除并移至2013年。不知道是否一些cofig文件通过了,但我无法确定。

我该如何解决这个问题?

回答

9

所以,经过搜索后我发现没有答案,所以我决定看看项目文件夹。它发生在主文件夹中有主版本的NuGet.exe 2.8.5,但该项目远不及那个主文件夹。

这样,当我下载项目时,它只是简单地使用了从TFS拉出的NuGet版本(或者我假设),那就是问题 - 那个版本是Nuget.exe 2.7.4。

替换“Nuget.exe”文件(在项目的/.nuget文件夹中找到)后,项目终于编译并且每个项目都开始重新开始工作。

1

我从最近克隆的分支中得到这个错误,但是(与上面的解决方案相反)发现,我的Nuget版本在项目目录中与我的解决方案目录中的相同。

我通过右键单击解决方案和管理解决方案的Nuget包来解决此问题。弹出的Nuget对话框表示软件包丢失并要求我恢复它们。下载完成后,项目即可成功完成。

23

工具扩展和更新安装,卸载“的NuGet包管理器”并重新安装。

+1

完美工作,谢谢!这自然会安装最新版本的NuGet。 – dakab 2015-09-22 16:16:27

+1

不要忘记重新启动Visual Studio! – SteveCinq 2017-07-21 02:54:55

1

我在尝试安装System.Net.Http时遇到同样的问题,它说nuget版本需要3.0或更高版本。我尝试了一些东西,但最终使用了Tools和Manage Nuget Packages,并进行了搜索,并尝试从那里安装它,当它说完全相同的事情 - 错误版本的nuget,但它弹出了升级Nuget按钮!

希望这可以帮助别人

4

在我的情况下,Visual Studio的挂起更新修复了nuget版本。
更新是“更新5”的VisualStudio 2013

更新是在菜单ToolsExtensions and Updates下上市,标签Updates上。

7

您也可以尝试更新NuGet包管理器直接从Tools>Extensions and Updates

enter image description here

0

只需重新安装的NuGet在Visual Studio