问题描述
|
我的应用程序正在模拟器和设备上构建并运行良好,但是我注意到由于某种原因,我的主目录中有一个重复的目录,也有一些重复的文件。因此,虽然我的主目录是/ MyAppName,但/ MyAppName / MyAppName中也有文件。
我小心地将所有非重复文件移出了子目录,删除了目录,并更新了Prefix Header和Info.plist文件的路径。我清理并构建了项目,但是仍然在编译器中看到重复的子目录(已删除),但仍然出现错误,如下所示:
arm-apple-darwin10-llvm-gcc-4.2:/MyAppName/MyAppName/main.m:无此类文件或目录
因为main.m现在位于/MyAppName/main.m中
除了Prefix Header和Info.plist文件之外,我没有看到要查找的变量或设置。我还有其他地方应该看吗?显然,某些内容仍在引用重复的子目录,但是我看不到哪里。
解决方法
从您对项目布局的描述来看,这听起来像是Xcode 4项目。 Xcode的项目配置仍然认为main.m位于ѭ0中,因此您需要为此文件和其他文件更新项目配置。
在项目浏览器(左面板)中选择main.m,然后打开文件检查器(右面板)。在“文件”检查器的“位置”标题下,单击看起来像带有文档图标的小窗口的按钮;这将允许您更新main.m的项目路径。重复其他文件。根据您拥有的文件数量,可以更轻松地将它们从项目中删除(使用项目导航器),确保不要删除它们,然后再次将它们重新添加到项目中。
您可能最终得到了位于文件系统层次结构不同级别的文件,因为在创建新文件时,Xcode使用Project Navigator中的选择来确定将其放置在磁盘上的位置。如果选择了项目,则文件将进入顶层文件夹;如果您选择了组,它将进入与该组或其父级关联的任何文件夹。
, 在项目中移动文件时遇到了这个问题。转到项目的构建设置,然后搜索
main.m
。然后修复该设置。
, 我有一个类似的问题(移动文件后);并且无法确定该设置在哪里坚持坚持main.m在旧文件夹中。 main.m正确出现在项目树中,被正确引用,包含在项目中,等等。但是该版本坚持使用旧位置。
通过从项目中删除main.m并重新添加它,我能够解决此问题。我还建议完全清理(cmd-opt-shift-K)并进行构建。
, 不确定使用的是哪个版本的Xcode,但是如果您使用的是3.x,是否使用了“空缓存”(Xcode菜单)来确保在构建之前删除了任何中间文件?有时清洁目标并不能解决问题。
另外,您可以尝试从项目中删除有问题的文件,然后从正确的路径重新添加它们。