我刚刚升级到Xamarin Studio 5.9(内部版本431),并且无法再运行我的项目。它可以与一个干净的项目一起工作。
当我运行我的应用程序时,我什至没有登陆Main。
Xamarin studio中的“应用程序输出”将打印一堆程序集负载。它到达MobileClientiOS.app/Newtonsoft.Json.dll [External]
,然后崩溃,并显示以下输出:
无法加载文件或程序集“ System.Threading.Tasks”或其依赖项之一。该系统找不到指定的文件。... / mono / mcs / class / corlib / System / AppDomain中的System.AppDomain.Load(System.Reflection.AssemblyName assemblyRef,System.Security.Policy.Evidence assemblySecurity)[0x00081]中的(System.IO.FileNotFoundException)。 cs:706在System.AppDomain.Load(System.Reflection.AssemblyName assemblyRef)[0x00000]在... / mono / mcs / class / corlib / System / AppDomain.cs:在System.Reflection.Assembly.Load(系统上的674) ... / mono / mcs / class / corlib / System.Reflection / Assembly.cs:551中的.Reflection.AssemblyName assemblyRef)[0x00000]位于ObjCRuntime.Runtime.CollectReferencedAssemblies(System.Collections.Generic.List 1程序集,系统。 ... / maccore / src / ObjCRuntime / Runtime.cs:218中的ObjCRuntime.Runtime中的[Reflection.Assembly程序集] [0x00019]。
MobileClientiOS [77830:1943120]严重:执行本机代码时获得了SIGABRT。这通常表示Mono运行时或应用程序使用的本机库之一发生致命错误。
抱歉,很长的堆栈跟踪信息,但是我没有主意。我们正在使用PCL,但在进行Xamarin Studio升级之前没有问题。
谢谢!
编辑:我降级了Xamarin.iOS,它可以再次工作。似乎失败的程序集是(现在可以在旧版本上使用):
/MobileClientiOS.app/System.Xml.Linq.dll [外部]
如何以最新版本运行?我不知道。
可以猜测一下,我认为这可能与Xamarin Bug 29211具有相同的根本原因。
如果是这样,那么很有可能可以使用相同的解决方法:
在“项目选项-> iOS构建->其他mtouch参数”下添加:
-linkskip = System.Threading.Tasks
如果该解决方法确实有效,那么很有可能会在即将发布的服务版本(由于本周晚些时候发布)中解决此问题。
事实证明,存在另一个细微不同的常见原因System.Threading.Tasks
。第二个错误最初是由错误29211隐藏的,因为这两个错误非常相似。Xamarin Bug 31560现在正在跟踪第二个问题。请注意,此错误仅影响模拟器的构建,并且具有非常简单的解决方法,因此其严重性较小。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句