[英]Package requires NuGet client version '2.12'
我正在嘗試在 Visual Studio 2012 中安裝“WindowsAzure.Storage 8.0.1”,但出現錯誤
包需要 NuGet 客戶端版本“2.12”或更高版本,但當前的 NuGet 版本是“2.8.60318.667”。
運行命令“Install-Package NuGet.Client”
Attempting to resolve dependency 'NuGet.Versioning (≥ 3.5.0)'.
Attempting to resolve dependency 'NuGet.Packaging (≥ 3.5.0)'.
Attempting to resolve dependency 'NuGet.Common (≥ 3.5.0)'.
Attempting to resolve dependency 'NuGet.Packaging.Core (≥ 3.5.0)'.
Attempting to resolve dependency 'NuGet.Packaging.Core.Types (≥ 3.5.0)'.
Attempting to resolve dependency 'NuGet.Frameworks (≥ 3.5.0)'.
Attempting to resolve dependency 'NuGet.Repositories (≥ 3.5.0)'.
Attempting to resolve dependency 'NuGet.RuntimeModel (≥ 3.5.0)'.
Attempting to resolve dependency 'Newtonsoft.Json (≥ 6.0.4)'.
Attempting to resolve dependency 'NuGet.ContentModel (≥ 3.5.0)'.
'NuGet.Client 3.5.0' already installed.
但我仍然收到錯誤。
“WindowsAzure.Storage 8.0.1”包需要 NuGet 客戶端版本“2.12”或更高版本,但當前的 NuGet 版本為“2.8.60318.667”。
更新您的 NuGet 包管理器擴展。 轉到Tools->Extensions and Updates
並選擇Updates->Visual Studio Gallery
。 更新 NuGet 包管理器擴展。 然后在 Visual Studio 重新啟動后嘗試安裝包。
NuGet 2.12 僅支持 Visual Studio 2013 及更高版本。 如果您使用的是 Visual Studio 2012,那您就不走運了。
當我嘗試將NewtonSoft.Json
nuget 包添加到我的項目時,我在 Visual Studio 2010 中遇到了這個問題。 當我嘗試從 nuget 包管理器控制台運行最新版本的 nuget 包時:
PM> Install-Package Newtonsoft.Json
它導致與 OP 提到的相同的錯誤:
包需要 NuGet 客戶端版本“2.12”或更高版本,但當前的 NuGet 版本是“2.8.60318.667”。
所以我想我會先將 Visual Studio 中的 NuGet 擴展更新到最新版本。 但是當我進入Tools -> Extensions and Updates
窗口時, Updates
選項卡沒有顯示 Nuget 擴展的任何更新。 因此,NuGet 客戶端版本2.12
似乎在 Visual Studio 2010 中根本不可用/不支持。 我現在已經沒有選擇了。
所以最后,我特意用這種方式安裝了一個特定的低版本( 6.0.3
) Newtonsoft.Json
包:
PM> Install-Package Newtonsoft.Json {Your Project Name} 6.0.3
這工作成功。 在撰寫本文時,該軟件包的最新版本是10.0.3
。
因此,可能是較新版本的 nuget 包僅與最新版本的 nuget 包管理器兼容。 因此,有時明確安裝較低版本的軟件包可能會對您有所幫助。 如果 nuget 包不是最新版本,則舊版本的 nuget 包當然將與 Visual Studio 中的舊 nuget 擴展兼容。
此解決方案中唯一需要注意的是,您所針對的 nuget 包的較低版本中存在的功能應該足以滿足您當前的項目需求。 祝你好運!
注意:雖然我已經在 Visual Studio 2010 中詳細闡述了這個解決方案,但您可以針對任何 Visual Studio 版本嘗試此解決方案。
我找到了這個問題的解決方案。
基本上,您在解決方案級別有一個.nuget
文件夾,該文件夾包含一個可能是舊的nuget.exe
文件。 許多軟件包可能需要該文件的新版本。
nuget.exe
.nuget/nuget.exe
。再試一次,我相信它會奏效。
嘗試
nuget update -self
我的結果:
Checking for updates from https://www.nuget.org/api/v2/.
Currently running NuGet.exe 2.8.7.
Updating NuGet.exe to 5.3.1.
Update successful.
此修復程序對我有用(我正在使用 vs 2013,不確定它是否適用於其余部分),轉到工具 --> 擴展和更新,然后查找 Visual Studio 2013 的 NuGet 包管理器,將其卸載。 在左側窗格中選擇聯機,這將帶您到 Visual Studio 庫,在右側窗格中搜索用於 Visual Studio 2013 的 NuGet 包管理器,它將為您提供正確的安裝版本。 安裝它,你就可以開始了,希望這能解決問題。
Install-Package Newtonsoft.Json -Version 6.0.3
我遇到了同樣的問題,我只是點擊了“為此解決方案恢復 NuGet 包”。 就我而言,這解決了問題。 希望它會有所幫助。
我解決了這個問題,我的步驟如下:
1.Do what as "Mathivanan KP" said;
2.Delete the folder ".nuget", which is below your solution folder;
3.Rebuild your solution;
4.Back to your solution folder, and press "Ctrl + Z", then rebuild your solution again.
如果問題仍然存在,我認為您應該將代碼從版本管理器克隆到一個新文件夾,並像以前一樣執行這些步驟。
希望對你有幫助。
您正在更新錯誤的軟件包。 更新您的 Nuget 包管理器,錯誤將消失。
Update-Package NuGet.VisualStudio
我嘗試了一切,但沒有任何幫助。 比我將 Visual Studio 版本從 2012 年更改為 2015 年,現在一切都像魅力一樣工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.