不同版本的程序集之间的冲突:适用于Windows但不适用于Mac

时间:2018-04-12 20:16:51

标签: visual-studio visual-studio-mac assembly-binding-redirect assemblybinding

我正在尝试构建一个Xamarin Android项目。项目在Windows上使用Visual Studio构建完美无缺但是我试图获得完全相同的代码库以使用 Visual Studio for Mac进行编译并继续得到以下错误。 < / p>

Windows上的Visual Studio必须自动执行绑定重定向。

/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(2,2): Error: Exception while loading assemblies: System.IO.FileNotFoundException: Could not load assembly 'KellermanSoftware.Compare-NET-Objects-Portable, Version=3.8.0.0, Culture=neutral, PublicKeyToken=d970ace04cc85217'. Perhaps it doesn't exist in the Mono for Android profile?
File name: 'KellermanSoftware.Compare-NET-Objects-Portable.dll'
  at Java.Interop.Tools.Cecil.DirectoryAssemblyResolver.Resolve (Mono.Cecil.AssemblyNameReference reference, Mono.Cecil.ReaderParameters parameters) [0x00099] in /Users/builder/data/lanes/5809/a7829590/source/monodroid/external/xamarin-android/external/Java.Interop/src/Java.Interop.Tools.Cecil/Java.Interop.Tools.Cecil/DirectoryAssemblyResolver.cs:229 
  at Java.Interop.Tools.Cecil.DirectoryAssemblyResolver.Resolve (Mono.Cecil.AssemblyNameReference reference) [0x00000] in /Users/builder/data/lanes/5809/a7829590/source/monodroid/external/xamarin-android/external/Java.Interop/src/Java.Interop.Tools.Cecil/Java.Interop.Tools.Cecil/DirectoryAssemblyResolver.cs:179 
  at Xamarin.Android.Tasks.ResolveAssemblies.AddAssemblyReferences (Java.Interop.Tools.Cecil.DirectoryAssemblyResolver resolver, System.Collections.Generic.ICollection`1[T] assemblies, Mono.Cecil.AssemblyDefinition assembly, System.Boolean topLevel) [0x0015c] in <bae064cadfb64dccb729d7cb7dab7861>:0 
  at Xamarin.Android.Tasks.ResolveAssemblies.Execute (Java.Interop.Tools.Cecil.DirectoryAssemblyResolver resolver) [0x001c7] in <bae064cadfb64dccb729d7cb7dab7861>:0  (MyProject.Droid)

我目前通过NuGet安装了3.2.0.0版本Compare-NET-Objects,这是我想要的版本。即使在搜索整个代码库之后,它仍然需要版本3.8.0.0,但在任何文件中都不存在。

以下是 packages.config:

中的条目
<package id="Compare-NET-Objects" version="3.02.0.0" targetFramework="monoandroid81" />

我还尝试为版本0.0.0.0-4.52.0.0添加程序集绑定重定向以在 app.config 中使用版本3.02.0.0,但它也没有帮助。

我的其他软件包或项目都没有更新,但我注意到targetFramework =&#34; monoandroid60&#34;以前是packages.config中目标框架的值,并将其更改回该值也无济于事。

0 个答案:

没有答案