xcode 真机运行报错“resource fork, Finder information, or similar detritus not allowed”

xcode 真机运行报错“resource fork, Finder information, or similar detritus not allowed”

情景

替换工程启动图片,然后运行报错。

解决方案:

1、/Library/Developer/Xcode/DerivedData/ 前往这个文件,将DerivedData下文件删除(不影响)

2、打开终端 cd进项目 

3、然后再终端输入:xattr -rc .(有个点点哦)

4、再次打开xcode运行工程。

注:前面1、2两部可以确保将OS X 特有的扩展属性 ( extend attributes )清除干净

报错 “Check dependencies Build setting PRODUCT_NAME undefined”

情景

使用SVN更新工程,便抛出此问题。

解决方案:

根据错误提示,选择target-> 搜索Product name 将缺失的信息补上。

拓展 (以下转https://yq.aliyun.com/articles/69208

文件和目录的扩展属性问题

在 Mac OS X 下,文件经常会被附加上 OS X 特有的扩展属性 ( extend attributes ),具体表现是用 ls -l 查看时会有 @ 的标记,譬如

$ ls -l os.pdf
-rw-r--r--@  1 cnhavee  staff  1518  1 9 14:13 os.pdf

这个 @ 属性是用户在 Finder 中对文件进行任意操作后就会被附带上,特别讨厌这个属性,这直接导致在 OS X 下打包后放到 Linux 系统分享文件的时候,会出现莫名其妙的错误,兼因 tar 命令本身并不能区分 extend attributes

还好,Mac OS X 下的 cp 有个选项 -X 能忽略这个扩展属性

cp: -X      do not copy extended attributes (eas) or resource forks.

处理这个问题,譬如打包,在打包前,请用 cp -Xr 拷贝出一份没有扩展属性的文件或目录,然后再 tar 打包处理。

另有个命令 xattr 也能做到

$ xattr -l filename
com.apple.ResourceFork:
00000000  00 00 01 00 00 00 05 08 00 00 04 08 00 00 00 32  |...............2|
……

$ xattr -d com.apple.ResourceFork filename

你可以一次性清除一个文件的所有 extend attributes

$ xattr -c filename

你也可以对一个目录及其下的所有文件做清除操作

$ xattr -rc directory
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值