NuGet:'X'已经有一个依赖项定义为'Y'

在尝试安装软件包Microsoft.AspNet.Server.IIS时,我在NuGet中收到以下错误

 Attempting to resolve dependency 'Microsoft.AspNet.Loader.IIS.Interop (≥ 1.0.0-alpha4-10330)'. Attempting to resolve dependency 'Microsoft.AspNet.Loader.IIS (≥ 1.0.0-alpha4-10330)'. 'Microsoft.AspNet.Loader.IIS' already has a dependency defined for 'Microsoft.AspNet.FeatureModel'. 

如何解决?

更新:另外我得到以下内容:

 Attempting to resolve dependency 'Microsoft.Framework.DependencyInjection (≥ 1.0.0-alpha4-10326)'. 'Microsoft.Framework.DependencyInjection' already has a dependency defined for 'Microsoft.Framework.ConfigurationModel'. 

这是通过安装最新的NuGet包pipe理器解决的:

https://visualstudiogallery.msdn.microsoft.com/4ec1526c-4a8c-4a84-b702-b21a8f5293ca

不要忘记重新启动VisualStudio。

我在我的解决scheme中修复了类似的问题:

  1. 打开命令提示符
  2. 导航到我的解决scheme中的.nuget文件夹
  3. 运行nuget update -self

这将我的解决scheme中的NuGet.exe的拷贝从2.8.0升级到3.4.4,修复了'X'已经有一个为'Y'定义的依赖关系,它阻止它在build立之前自动下载SSH.NET 。

(如果您的解决scheme中没有NuGet.exe的副本 – 也可能不是 – 那么您应该在TN的答案中尝试解决scheme)

我尝试了更新,但它不适合我。 帮助:

  1. 卸载nuget =>工具>扩展和更新>已安装
  2. 安装nuget
  3. 重新加载VS

我在TeamCity构build服务器上遇到这个问题。 我尝试更新构build服务器上的NuGet(通过TC),但没有奏效。 我最终通过将Nuget Installer构build步骤的“更新模式”从解决scheme文件更改为packages.config来解决了这个问题。

我得到的问题是'Newtonsoft.Json' already has a dependency defined for 'Microsoft.CSharp'在TeamCity构build服务器上'Newtonsoft.Json' already has a dependency defined for 'Microsoft.CSharp' 。 我将Nuget Installer构build步骤的“ 更新模式 ”从解决scheme文件更改为packages.configNuGet.exe到最新版本(我有3.5.0),它的工作原理

我唯一的解决scheme是从Visual Studio 2013中完全卸载nuget,然后再次安装VS之间的义务重启。

在我的情况下,我不得不删除项目文件夹 /.nuget 文件 NuGet.exe并重build项目。

我也在NuGet.targets中将DownloadNuGetExe标记为true:

 <DownloadNuGetExe Condition=" '$(DownloadNuGetExe)' == '' ">true</DownloadNuGetExe> 

希望这是帮助。