Windows端VS2017开发Xamarin.Forms项目iOS模拟器运行报错求助
我来帮你搞定这个找不到LinkDescription.xml的问题!这种情况我在调试Xamarin iOS项目时也碰到过几次,给你几个靠谱的解决步骤:
清理并重建项目+清除Mac端缓存
先在Visual Studio 2017里右键解决方案,选择「清理解决方案」,之后再右键选择「生成解决方案」。接着登录你的Mac Mini,找到路径/Users/macmini3/Library/Caches/Xamarin/mtbs/builds/MN.IOSApp/2fdeec2fb7f48e99f4fd7886d5cce712/,手动删除这个文件夹里的所有内容——缓存文件损坏或者不同步是常见的诱因。回到Windows端的VS,重新尝试运行iOS模拟器。检查iOS项目的链接器配置
右键你的iOS项目→「属性」→「iOS生成」,找到「链接器行为」选项:- 如果你没有自定义过链接描述文件,先把链接器行为暂时改成「不链接」试试,看能不能正常运行,排除链接器配置的问题;
- 要是你确实需要自定义链接规则,确认项目里存在
LinkDescription.xml文件,并且右键这个文件→「属性」,把「复制到输出目录」设置为「始终复制」或者「如果较新则复制」。
重新配对Visual Studio和Mac Agent
有时候VS和Mac Agent的连接缓存会出问题,导致文件同步失败。打开VS的「工具」→「选项」→「Xamarin」→「iOS设置」,点击「配对到Mac」,重新建立和Mac Mini的连接,然后再尝试运行项目。检查Mac端的环境兼容性
确保Mac上的Xcode版本和你的Visual Studio 2017、Xamarin.iOS版本兼容(VS2017对应的Xcode一般是9.x到11.x区间)。另外,打开Mac上的Xcode,确认已经同意了苹果的许可协议——第一次打开Xcode时必须同意协议,否则会影响后续的构建流程。手动添加空白的LinkDescription.xml(如果需要)
如果你的项目本来就需要这个文件但不小心丢失了,新建一个空白的LinkDescription.xml,内容可以先写:<?xml version="1.0" encoding="UTF-8"?> <linker> </linker>把它添加到iOS项目中,设置好复制到输出目录后,重新构建项目。
这些步骤应该能解决大部分找不到LinkDescription.xml的问题,要是还不行,可以查看VS的输出日志,看看有没有更详细的错误提示。
内容的提问来源于stack exchange,提问作者charitht99 perera

