Xamarin.Forms.Forms.Init(e) Onlaunched 中的 FileNotFoundExeception

Posted

技术标签:

【中文标题】Xamarin.Forms.Forms.Init(e) Onlaunched 中的 FileNotFoundExeception【英文标题】:Xamarin.Forms.Forms.Init(e) FileNotFoundExeception in Onlaunched 【发布时间】:2017-12-10 13:00:15 【问题描述】:

我的 android 应用程序工作正常,但是当我启动我的 UWP 应用程序时,它在 Xamarin.Forms.Forms.Init(e) 行的 App.xaml.cs 的 OnLaunched 中崩溃

这是我得到的错误:

System.IO.FileNotFoundException: '无法加载文件或程序集 'clrcompression,Culture=neutral,PublicKeyToken=null'。系统 找不到指定的文件。'

这完全让我的应用崩溃了,我只能看到我的启动画面。

ios 中遇到了类似的问题。它还显示 FileNotFoundexception 错误,但它不会中断,我可以跳过它。它在 UIApplication.Main(args, null, "AppDelegate"); 行显示我的 Main.cs 中的错误;

【问题讨论】:

在 UWP 项目中,您使用的任何图像都需要位于项目的根目录中(我觉得这很奇怪而且很乱,但这是真的。),否则它不会找到它们而你会得到那个可爱的例外。 我是否可能只是在我的文件夹中丢失了一张图片?我已经在我的根目录中使用了一个文件夹来放入我的图像,并且我有方法检查是否是 uwp 将文件夹名称添加到路径中。我以前做过,还没有遇到任何问题。 是的,我刚刚发现其他人遇到了同样的错误,他们说最后这是由 XLab 程序集引用搞砸引起的。所以绝对值得检查一下,看看你的 UWP 项目中没有引用。 我删除 bin/obj 和 .vs 文件夹,看看是否能解决我的问题 谢谢!这样可行!如果您愿意,可以将其发布为答案,以便我接受! 【参考方案1】:

正如在原始帖子的 cmets 中所讨论的,对于任何其他偶然发现此线程但有相同异常的人,在大多数情况下,原因似乎与 Xlabs 程序集未正确加载或未删除有关完全地。至少在过去半年里,这似乎一直是一个问题(可以找到类似情况的过去示例Here)。

在这种情况下,如果您删除了 xlab 引用但仍然出现错误,则解决方案是从您的项目文件夹中删除 obj/bin/.VS 文件夹。然后对于 UWP 项目,重新构建然后部署。这个问题应该得到解决。

【讨论】:

我也删除了.vs文件夹,不确定是否需要。 为了完整起见,我会添加它。 =)

以上是关于Xamarin.Forms.Forms.Init(e) Onlaunched 中的 FileNotFoundExeception的主要内容,如果未能解决你的问题,请参考以下文章