Xcode 9/9.1运行项目报错:Failed to read file attributes for assets.xcassets
解决Xcode 9.1读取assets.xcassets文件属性失败的问题
我之前也碰到过这个烦人的报错——"Failed to read file attributes for assets.xcassets",折腾了好几种方法才搞定,给你分享几个靠谱的解决方案,按顺序试试应该能解决:
清理项目缓存,重启Xcode
这是最基础也最容易见效的步骤:- 先完全关闭Xcode
- 打开终端,执行命令
rm -rf ~/Library/Developer/Xcode/DerivedData清空DerivedData缓存 - 重新打开项目,执行
Product > Clean Build Folder(快捷键Cmd+Shift+K) - 重启Xcode后再尝试编译运行
检查assets.xcassets的文件权限
有时候文件权限异常会导致Xcode读取失败:- 在Finder里找到项目中的assets.xcassets文件夹
- 右键选择「显示简介」,拉到「共享与权限」部分
- 确保当前登录用户有「读与写」的权限,如果没有,点击右下角的锁图标解锁后修改权限,再勾选「应用到包含的项目」
重新添加assets.xcassets到项目
可能是文件的引用关系出了问题:- 在Xcode中选中assets.xcassets,按Delete键选择「Remove Reference」(别选Move to Trash,避免误删文件)
- 右键项目目录,选择「Add Files to [你的项目名]」,重新选中assets.xcassets文件夹,勾选「Copy items if needed」和对应的target,确认添加
排查assets内的损坏资源
如果assets里有损坏的图片或资源,也可能触发这个报错:- 打开assets.xcassets,逐个检查里面的资源,尤其是最近新增的图片
- 尝试移除怀疑有问题的资源,重新编译测试;如果能正常运行,再重新导入该资源(确保资源格式正确,比如png/jpg文件没有损坏)
调整Xcode版本
Xcode 9.1本身可能存在一些bug,如果上面的方法都没用,可以试试升级到Xcode 9.x的后续稳定版本,或者暂时降级到Xcode 9.0(如果项目兼容的话)
内容的提问来源于stack exchange,提问作者TAO
相关产品推荐
相关产品推荐

