首页 文章

警告MSB3276 - 发现同一依赖程序集的不同版本之间存在冲突

提问于
浏览
33

我的解决方案包含多个项目并编译好 . 我正在使用nuget,我使用的其中一个软件包是log4net.2.0.0 . 我最近将软件包更新到log4net.2.0.3,并确保在每个属于该解决方案的项目中,引用都会更新 . 不幸的是,在编译过程中我仍然收到以下警告:

(ResolveAssemblyReferences目标) - > C:\ Program Files(x86)\ MSBuild \ 12.0 \ bin \ Microsoft.Common.CurrentVersion.targe ts(1635,5):警告MSB3276:发现同一依赖程序集的不同版本之间存在冲突 . 请在项目文件中将“AutoGenerateBindingRedirects”属性设置为true . 有关详细信息,请参阅http://go.microsoft.com/fwlink/?LinkId = 294190 .

使用/ verbosity编译时,或者更详细的警告版本:详细

考虑从版本“1.2.11.0”[]到版本“1.2.13.0”[Z:\ xxx \ packages \ log4net.2.0.3 \ lib]将app.config重新映射到程序集“log4net,Culture = neutral,PublicKeyToken = 669e0ddf0bb1aa2a” \ net40-full \ log4net.dll]解决冲突并摆脱警告 . C:\ Program Files(x86)\ MSBuild \ 12.0 \ bin \ Microsoft.Common.CurrentVersion.targets(1635,5):警告MSB3276:发现同一依赖程序集的不同版本之间存在冲突 . 请在项目文件中将“AutoGenerateBindingRedirects”属性设置为true . 有关详细信息,请参阅http://go.microsoft.com/fwlink/?LinkId=294190 . [Z:\ xxx \ xxx \ xxx \ xxx.csproj] AssemblyFoldersEx位置:“{Registry:Software \ Microsoft.NETFramework,v4.5,AssemblyFoldersEx}”

我理解它意味着什么,遗憾的是我无法追踪哪个项目/库仍然引用旧版本的log4net . 我知道我可以通过简单地重新映射到app.config来掩盖警告,但它似乎在地毯下扫除问题而不是实际解决它 .

在我的解决方案中我追踪旧版log4net的最佳方法是什么?我已经尝试了所有显而易见的事情,包括搜索所有文件的版本号 . 我还确保没有其他nupkgs将依赖项设置为此特定版本的log4net .

任何帮助将非常感激 .

1 回答

  • 34

    感谢我的父亲和https://github.com/mikehadlow/AsmSpy我设法找到了:

    参考:SuperSocket.SocketBase的log4net 1.2.11.0

    哈哈!非常方便的工具!

相关问题