解决 .net core 中 nuget 包版本冲突问题[转载]
今天在一个 asp.net core 项目中遇到了 nuget 包版本冲突的问题,错误信息如下:
Version conflict detected for Microsoft.AspNet.WebApi.Client. Reference the package directly from the project to resolve this issue.
Cnblogs.Zzk.ServiceAgent -> Cnblogs.Net 2.0.1 -> Microsoft.AspNet.WebApi.Client (>= 5.2.6)
Cnblogs.Zzk.Web -> Microsoft.AspNetCore.App 2.1.0-rc1-final -> Microsoft.AspNet.WebApi.Client (= 5.2.4)
Cnblogs.Zzk.Web 是一个基于 asp.net core 2.1 rc 1 的项目,所引用的 nuget 包 Microsoft.AspNetCore.App 引用了 Microsoft.AspNet.WebApi.Client 5.2.4 ,而引用的 Cnblogs.Zzk.ServiceAgent 项目所引用的 nuget 包 Cnblogs.Net 则引用了 Microsoft.AspNet.WebApi.Client 5.2.6
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp2.1</TargetFramework>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\Cnblogs.Zzk.ServiceAgent\Cnblogs.Zzk.ServiceAgent.csproj">
</ProjectReference>
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.App" />
</ItemGroup>
</Project>
版本冲突就是由于这两个地方引用的 Microsoft.AspNet.WebApi.Client 版本不一致。
要解决这个版本冲突问题有三个方法:
1)升级 Microsoft.AspNetCore.App 所引用的 Microsoft.AspNet.WebApi.Client ;
2)降级 Cnblogs.Net 所引用的 Microsoft.AspNet.WebApi.Client ;
3)既不升级也不降级,通过某种兼容处理方式解决版本冲突。
第 1 种方法此路不通,Microsoft.AspNetCore.App 不是我们自己的项目。
第 2 种方法退而求次,但不想因为这个问题而降级。
于是,选择了第 3 条路。
如果是 .net framework 项目可以通过 assembly binding redirect 机制解决,添加下面的配置即可
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="" publicKeyToken="" />
<bindingRedirect oldVersion="" newVersion="" />
</dependentAssembly>
</assemblyBinding>
</runtime>
但 .net core 中根本没有 assembly binding redirect 机制,那怎么办?
非常好办,只要认真看了错误提示信息:
Version conflict detected for Microsoft.AspNet.WebApi.Client. Reference the package directly from the project to resolve this issue.
只要在 Cnblogs.Zzk.Web 项目中添加 Microsoft.AspNet.WebApi.Client 的引用,并且使用冲突中的最高版本,比如这里引用 5.2.6 ,
<ItemGroup>
<PackageReference Include="Microsoft.AspNet.WebApi.Client" Version="5.2.6" />
</ItemGroup>
就可以简单粗暴地解决 nuget 包版本冲突问题。
原文地址:https://www.cnblogs.com/dudu/p/9096803.html
解决 .net core 中 nuget 包版本冲突问题[转载]的更多相关文章
- 解决 .net core 中 nuget 包版本冲突问题
今天在一个 asp.net core 项目中遇到了 nuget 包版本冲突的问题,错误信息如下: Version conflict detected for Microsoft.AspNet.WebA ...
- maven中导入包版本冲突的解决
导入struts包,在struts核心包的ognl包下存在javassist包: 然后再导入hibernate包,在hibernate核心下也存在javassist包: 这样便会存在冲突,ecplis ...
- 快速解决flutter中package包版本冲突问题
当你的项目需要安装的依赖包越多,遇到包冲突可能性就越大,尤其是当依赖的包有重大更新时.比如下图: 上面可以看到是xml跟intl_translation两个包有冲突,因为他们依赖两个不同的petitp ...
- 解决Maven项目中jar包依赖冲突问题
版本冲突的解决方案 [1]调节原则 [1]路径最短者优先原则 [2]路径相同时,先声明者优先原则 [2]排除原则:用于排除某项依赖的依赖jar包 <dependency> <grou ...
- redis 集群java.lang.NoSuchMethodError:SpringJAR包版本冲突错误解决方法
项目中出现如下错误,记录下解决方法: org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exce ...
- 施用 maven shade plugin 解决 jar 或类的多版本冲突
施用 maven shade plugin 解决 jar 或类的多版本冲突 使用 maven shade plugin 解决 jar 或类的多版本冲突java 应用经常会碰到的依赖的三方库出现版本 ...
- elasticsearch依赖的jackson-jar包与jboss依赖的jackson-jar包“版本”冲突
elasticsearch依赖的jackson-jar包与jboss依赖的jackson-jar包“版本”冲突,导致elasticsearch相关功能在本地tomcat服务器正常,但是部署到jboss ...
- BUG—Nuget包版本不一致导致程序行为与预期不符
注:本文收录于<Bug集锦>,请点击此处查看全文目录 BUG起因 先介绍一下背景: 数周前的一个极其平常的下午,完成了本次迭代的开发工作,发布到QA提测,然后开始摸鱼.没几分钟,测试就来找 ...
- spring maven项目解决依赖jar包版本冲突方案
引入:http://blog.csdn.net/sanzhongguren/article/details/71191290 在spring reference中提到一个解决spring jar包之间 ...
随机推荐
- Java中如何将函数名作为参数传递
采用lambda表达式: import java.util.function.Function; class Test { public static void main(String... args ...
- 3D-LaneNet:端到端三维多车道检测ICCV2019
3D-LaneNet:端到端三维多车道检测ICCV2019 3D-LaneNet: End-to-End 3D Multiple Lane Detection 论文链接: http://openacc ...
- webgl变换:深入图形平移
在以前的文章里,不管是绘制图形,绘制点亦或者是改变色值,所有的内容都是静态的. 在 webgl 里,图形的运动分为 平移.旋转.缩放 三种类型. 接下来,我们会从零基础开始,一点一点来深入了解图形如何 ...
- python+selenium基础篇,网页截图
代码如下: from selenium import webdriver dr=webdriver.Firefox() dr.get("https://www.baidu.com" ...
- python+selenium基础篇,三种等待方式,显示、隐式、强制等待
1.显示等待: from selenium import webdriver from time import sleep from selenium.webdriver.support.ui imp ...
- Spring Cloud09: Config 配置中心
一.概述 什么是配置中心呢,在基于微服务的分布式系统中,每个业务模块都可以拆分成独立自主的服务,由多个请求来协助完成某个需求,那么在某一具体的业务场景中,某一个请求需要调用多个服务来完成,那么就存在一 ...
- UF_MODL 建模操作
Open C uc6560 uf5300uf5301uf5303uf5305uf5309uf5310uf5311uf5313uf5315uf5317uf5319uf5320uf5321uf5323uf ...
- delphi xe 10.3 利用Git组群开发,Git服务器安装,Git 拉取,提交,推送相关设置操作
1. Git服务器安装, 参考 https://blog.csdn.net/u012842630/article/details/97175397 Git服务器官方网站,要FQ. 2. 工具软件 gi ...
- ceph-csi源码分析(5)-rbd driver-nodeserver分析(上)
更多 ceph-csi 其他源码分析,请查看下面这篇博文:kubernetes ceph-csi分析目录导航 ceph-csi源码分析(5)-rbd driver-nodeserver分析(上) 当c ...
- Unity不规则按钮点击区域(UGUI)
文章目录 一. 前言 二. 最终效果 三. 实现 1.创建UICamera 2. UIPolygon节点 3. 编辑碰撞区域 5. 运行测试 6. UIPolygon代码 一. 前言 游戏开发中,可能 ...