Xamarin Forms创建项目遇IBTool错误255(Xcode9.2+iOS11.3)求助
我之前在帮朋友排查Xamarin项目问题时,刚好碰到过一模一样的ibtool错误255情况,结合你给出的环境(Xcode 9.2 + iOS 11.3),给你按优先级整理了几个修复步骤,你可以一步步试:
确认Xamarin与Xcode版本的兼容性
Xamarin对Xcode版本有严格的适配要求,Xcode 9.2对应的Xamarin.iOS版本应该是11.6.x系列。你可以打开Visual Studio for Mac的「关于」面板查看当前Xamarin.iOS版本,如果版本不匹配,直接通过「Visual Studio → 检查更新」升级到对应兼容的版本,这是最常见的触发原因。重置Xcode命令行工具
ibtool属于Xcode的命令行工具集,路径或权限异常很容易触发报错:- 打开终端,执行
sudo xcode-select -r重置命令行工具的默认路径 - 执行
sudo xcodebuild -license accept,确保已接受Xcode的许可协议(升级Xcode后许可经常会失效) - 重启Visual Studio和Xcode
- 打开终端,执行
清理各类缓存文件
缓存堆积也会导致工具调用异常:- 清理Xcode的Derived Data:打开Xcode → 「Xcode → Preferences → Locations」,点击Derived Data旁的箭头,删除所有文件夹
- 清理Xamarin iOS缓存:手动删除
~/Library/Caches/Xamarin/iOS目录下的全部内容 - 清理项目缓存:右键解决方案选择「清理解决方案」,再手动删除每个项目下的
bin和obj文件夹,之后重新生成项目
检查ibtool的路径与权限
先确认ibtool的路径是否正确:在终端执行which ibtool,正常应该返回/Applications/Xcode.app/Contents/Developer/usr/bin/ibtool
再检查权限:执行ls -l /Applications/Xcode.app/Contents/Developer/usr/bin/ibtool,确保权限为-rwxr-xr-x(当前用户有读写执行权限)
如果权限异常,执行sudo chmod +x /Applications/Xcode.app/Contents/Developer/usr/bin/ibtool修复重新安装Xcode命令行工具
如果上面的步骤都无效,尝试重新安装命令行工具:
在终端执行xcode-select --install,按照提示完成安装,安装后再执行sudo xcode-select -s /Applications/Xcode.app/Contents/Developer指定正确路径检查系统隐私权限
macOS的隐私限制可能会阻止Visual Studio调用Xcode工具:
打开系统偏好设置 → 「安全性与隐私 → 隐私」,找到「完全磁盘访问」,将Visual Studio for Mac添加到列表中,之后重启Visual Studio
内容的提问来源于stack exchange,提问作者Mika

