Nuget包还原:目标.NET版本错误

4
由于某种原因,当我使用TeamCity构建我的应用程序时,它坚持尝试安装“System.Runtime 4.0.20”。然后我收到以下错误:
[更新]警告:包“System.Runtime 4.0.20”在项目“AkkaNeat.Tests.csproj”中不存在。 [更新]已从'packages.config'中删除软件包'System.Resources.ResourceManager 4.0.0' [更新]已从“packages.config”中删除软件包“System.Linq 4.0.0” [更新]针对定位于'net45'的项目'AkkaNeat.Tests.csproj',添加软件包'System.Runtime 4.0.10'。 [更新]无法安装软件包“System.Runtime 4.0.20”。您正在尝试将此软件包安装到一个目标为“.NETFramework,Version = v4.5”的项目中,但该软件包不包含与该框架兼容的任何程序集引用或内容文件。有关更多信息,请联系包作者。 [更新]进程退出,代码为1 [步骤2/4]还原NuGet软件包(NuGet安装程序)失败
我不明白为什么要添加这个软件包。在代理机器上,在Xamarin和Visual Studio中都可以成功构建所有内容。
我已经花了两天时间来解决这个问题。我甚至尝试在packages.json文件中明确添加对不同版本的System.Runtime的引用。但是Nuget仍然坚持使用指定的版本。
1个回答

4
您正在尝试安装的软件包不支持您的项目所针对的 .Net 版本。要解决此问题,请将您的项目所针对的 .Net 版本更新为该软件包支持的 .Net 版本 System.Runtime 4.0.20(该版本未在您提供的输出中显示)。
步骤1:查找软件包支持的 .Net 版本。
您可以通过查看其安装位置下的文件夹来确定您需要的 nuget 软件包版本。如果它在文件夹/path/to/lib/net46/path/to/lib/net451中,则分别表示 .Net 4.6 或 .Net 4.5.1。
步骤2:更改您的项目的 .Net 版本

谢谢。在您的帮助下,我最终让它正常工作了。 :) - K-Dawg

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接