【问题标题】:Nuget.exe Install — Microsoft.CSharp already has a dependency for System.Dynamic.RuntimeNuget.exe 安装 — Microsoft.CSharp 已经具有对 System.Dynamic.Runtime 的依赖项
【发布时间】:2016-07-05 21:22:15
【问题描述】:

我们在 CI 构建中通过 PowerShell 预构建脚本安装了一些包。最近,我们收到了部分成功的电子邮件通知,其中提供了以下信息:

“Microsoft.CSharp”已经为“System.Dynamic.Runtime”定义了一个依赖项

这是生成信息的 PowerShell 脚本中的命令:

cd $source\MyNet\MyWeb\MyComp.WebViewer\packages
&"C:\Program Files\Microsoft Team Foundation Server 14.0\Tools\Nuget.exe" install newtonsoft.json

我希望能够处理/忽略此消息,以便接收完全成功的构建通知。

否则它似乎不会导致任何问题。

有没有人有任何可以绕过此类错误的 nuget.exe 命令行参数?

【问题讨论】:

    标签: powershell continuous-integration nuget


    【解决方案1】:

    错误信息already has a dependency defined for通常表示您使用的NuGet版本太旧。所以你应该看看更新它。

    当正在使用的 NuGet 包将组依赖项与您正在使用的 NuGet 版本不知道的目标框架一起使用时,可能会发生此特定错误。

    【讨论】:

    • 我正在尝试确定 Nuget.exe 的最新版本。我不记得我以前在上述位置安装它时使用了什么,但它看起来像 Team Foundation Server Tools。当我搜索它时,我看到了日期为 11/2015 的内容。我想安装一个更新的 nugget.exe,看看是否能解决问题。我目前使用的版本是 2.8.60318.667。
    • Worked for me, too!非常感谢。
    【解决方案2】:

    在我的情况下,我在安装一些 Nuget 包时收到一条消息:

    “PackageA”已经为“PackageB”定义了一个依赖项

    .

    我在Nuget包管理器中在线搜索PackageB,然后点击安装按钮再次安装, 然后遇到了问题:

    该包需要 NuGet 客户端版本“2.12”或更高版本,但当前 NuGet 版本为“2.7.40911.287”。

    我按照这个解决方案做Nuget version not correct?

    升级Nuget包管理器的版本后,我可以安装PackageB,然后我可以安装PackageA。

    【讨论】:

      【解决方案3】:

      我在使用 NuGet 加载 Google.Apis.Sheets.v4 时遇到了类似问题。

      将我的 VS.NET 2013 从 NuGet 2.8.60723.765 升级到 2.12.0.817 解决了这个问题。

      要查看您的 NuGet 版本号,请使用工具/NuGet 包管理器/包管理器控制台转到包管理器控制台提示 (PM>)。然后,在 PM> 提示符处输入“$host”。

      PM> $host
      
      Name             : Package Manager Host
      Version          : 2.12.0.817
      InstanceId       : 38c7734c-3169-4933-b934-23dab18055f2
      UI               : System.Management.Automation.Internal.Host.InternalHostUserInterface
      CurrentCulture   : en-US
      CurrentUICulture : en-US
      PrivateData      : NuGetConsole.Host.PowerShell.Implementation.NuGetPSHost+Commander
      IsRunspacePushed : False
      Runspace         : System.Management.Automation.Runspaces.LocalRunspace
      
      PM> 
      

      要更新 NuGet,请选择工具/扩展和更新...。然后,选择“更新”,然后单击“NuGet 包管理器”的“更新”按钮。

      更新完成后,重新启动 Visual Studio 并重新检查 NuGet 版本号。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-06-18
        • 2016-11-09
        • 2019-01-24
        • 1970-01-01
        相关资源
        最近更新 更多