无法在xamarin android项目中使用调试器:System.IO.FileNotFoundException:无法加载文件或程序集Mono.Posix

时间:2017-06-05 08:21:30

标签: android visual-studio xamarin

将我的visual studio 2017升级到15.2v (26430.12)

Xamarin.Android SDK 7.3.1.2 (9dbc4c5)

不能再使用调试器了。项目构建成功并部署完成,但随后发生此错误:

  

无法加载文件或程序集Mono.Posix

完整的错误消息:

enter image description here

5 个答案:

答案 0 :(得分:12)

这是Known Issue。根本原因是Mono.Posix.dll下缺少C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\Extensions\Xamarin.VisualStudio\个文件。

因此,要解决此问题,您可以从attached file下载dll文件并将其复制到上述位置。

答案 1 :(得分:7)

埃尔维斯'答案是对的。但是,除了将文件Mono.Posix.dll复制到正确的位置之外,还需要通过右键单击文件,选择属性并选中取消阻止框来取消阻止文件。之后,您需要重新启动Visual Studio。

答案 2 :(得分:0)

对我来说有帮助;

  • 在Android项目中禁用“使用共享运行时”。
  • 从模拟器中删除应用程序。
  • 从模拟器中删除Mono运行时
  • 清洁 - >重建 - >部署而不调试然后启动调试会话

稍后我可以重新启用“使用共享运行时”,它一直在工作。

答案 3 :(得分:0)

这个问题影响了我的两个不同的PC。起初我首先认为这与我在第一台PC上发生的VS升级有关。但是,在我从23.3.0升级到25.3.1而没有更新VS后,它影响了我的第二台PC。

我将避免25.3.1并恢复到23.3.0。

BTW我尝试过woelliJ的解决方案,但它对我没用。

答案 4 :(得分:0)

临时解决方法:

  1. 下载缺少的Mono.Posix文件并解压缩档案。
  2. 在资源管理器中右键单击Mono.Posix.dll文件,然后选择“属性”。
  3. 检查“数字签名”选项卡以确保该文件显示有效的Xamarin Inc.签名。
  4. 在“常规”选项卡的底部,如果出现“取消阻止”复选框,请启用它并选择“确定”。 (出现此复选框取决于文件的下载方式。)
  5. 对于Visual Studio 2017,将Mono.Posix.dll文件复制到“Xamarin.VisualStudio”扩展目录中。例如,对于企业版的默认安装,请将文件复制到: C:\ Program Files(x86)\ Microsoft Visual Studio \ 2017 \ Enterprise \ Common7 \ IDE \ Extensions \ Xamarin.VisualStudio
  6. 对于Visual Studio 2015,将文件复制到“Xamarin \ Xamarin”扩展目录中: C:\ Program Files(x86)\ Microsoft Visual Studio 14.0 \ Common7 \ IDE \ Extensions \ Xamarin \ Xamarin \
  7. 退出并重新启动Visual Studio。