我刚刚使用Xcode的重构工具将核心数据类从Player重命名为Person。修复了因使用Xcode在重命名时遗漏的点符号导致的大约100个错误后,我到了最后一个:
Player.m - 词汇或预处理器问题 - 找不到'Person.h'
Player.m在项目中不再存在,并在错误中显示为已删除(空图标)。显然,既然我摆脱了它,我不希望它再存在了!
为了解决这个问题,我尝试重新添加Player.h和Player.m的旧副本,以及清理。我已经检查了Build Phases-> Compile Sources部分,Person.m在那里,Player.m不是。事实上,Person.h确实存在。
不确定是否重要,但我使用mogenerator生成我的核心数据类。此外,这是我的第三个xcdatamodel版本。版本1和2使用了Player.h。
以下是错误的屏幕截图:
答案 0 :(得分:5)
尝试清理构建,如果这不起作用,重新启动Xcode ,如果没有,删除DerivedData目录,甚至可能重启。
Xcode有时会感到困惑。
答案 1 :(得分:2)
你可以通过点击Cmd + Alt + Shift + K来尝试超级清洁(不确定实际术语是什么)。这将执行清理并从构建文件夹中删除所有内容。
答案 2 :(得分:0)
我有一个非常类似的问题,并解决它删除我的项目设置缺少的编译源。要做到这一点,请遵循以下步骤
只需点击即可运行该项目。我希望这有助于他人。