在我的Xcode项目中,我在目标中创建了一个符号链接脚本,允许我编辑脚本并实时查看更新。不幸的是,这样做的副作用是,如果我在再次构建之前不进行清理,则会收到以下错误消息:
ln: /Users/atg/Desktop/Projects/Xcode Projects/Debug/Xsera.app/Contents/Resources/: Directory not empty
我的脚本中的以下行:
ln -F -s -f "$PWD/../Resources/" "$BUILD_ROOT/Debug/$UNLOCALIZED_RESOURCES_FOLDER_PATH"
我知道这是正确的行,因为它在我清理后构建时有效,但如果我在没有清理的情况下构建则无效。
因此,我想要做的是弄清楚如何在不清洁的情况下允许构建。我认为最简单的方法是在构建之前强制清理,但是如果有人知道任何其他方法来消除错误,那也会很好。
谢谢!
答案 0 :(得分:0)
在Twitter上稍微调查后,我们提出了以下解决方案:
if [ ! -d "$BUILD_ROOT/Debug/$UNLOCALIZED_RESOURCES_FOLDER_PATH" ];
then ln -F -s -f "$PWD/../Resources/" "$BUILD_ROOT/Debug/$UNLOCALIZED_RESOURCES_FOLDER_PATH";
fi;
这样,如果目录存在,它就不会对链接感到烦恼,因为它已经建立。