如何解决nuget包之间的版本冲突

时间:2016-10-24 06:12:04

标签: collections version nuget-package coreclr

我正在使用ASP.NET Core应用程序,其中我依赖于两个冲突的nuget包。包恢复输出显示冲突,如下所示:

Version conflict detected for System.Collections.
MyProject (>= 2.0.0) -> Microsoft.AspNetCore.Mvc.TagHelpers (>= 1.0.0) -> Microsoft.AspNetCore.Mvc.Razor (>= 1.0.0) -> Microsoft.AspNetCore.Mvc.ViewFeatures (>= 1.0.0) -> Microsoft.AspNetCore.Mvc.DataAnnotations (>= 1.0.0) -> Microsoft.Extensions.Localization (>= 1.0.0) -> Microsoft.AspNetCore.Hosting.Abstractions (>= 1.0.0) -> Microsoft.Extensions.Configuration.Abstractions (>= 1.0.0) -> System.Linq (>= 4.1.0) -> System.Collections (>= 4.0.11)
MyProject (>= 2.0.0) -> Microsoft.NETCore.Runtime.CoreCLR-x64 (>= 1.0.0) -> System.Collections (= 4.0.10).

当我使用CoreCLR-x64的预发布版本时,我在System.Collections上遇到另一个冲突:

Version conflict detected for System.Collections.
 MyProject (>= 2.0.0) -> Microsoft.AspNetCore.Mvc.TagHelpers (>= 1.0.0) -> Microsoft.AspNetCore.Mvc.Razor (>= 1.0.0) -> Microsoft.AspNetCore.Mvc.ViewFeatures (>= 1.0.0) -> Microsoft.AspNetCore.Mvc.DataAnnotations (>= 1.0.0) -> Microsoft.Extensions.Localization (>= 1.0.0) -> Microsoft.AspNetCore.Hosting.Abstractions (>= 1.0.0) -> Microsoft.Extensions.Configuration.Abstractions (>= 1.0.0) -> System.Linq (>= 4.1.0) -> System.Collections (>= 4.0.11)
 MyProject (>= 2.0.0) -> Microsoft.NETCore.Runtime.CoreCLR-x64 (>= 1.0.1-beta-23225) -> System.Collections (= 4.0.11-beta-23225).

对我来说稍微有些疑惑,因为顶级依赖应该能够接受4.0.11之后的版本......

当我使用早期版本的Microsoft.AspNetCore.Mvc.TagHelpers时,我需要更改超过10个其他依赖项的版本。这是唯一的方法吗?这可以用比手动更好的方式完成吗?

如何处理这类问题,特别是一般?

0 个答案:

没有答案