Xcode 4代码感觉不起作用

我正在Xcode 4中运行一个“旧”的Xcode 3项目,而代码感并不适合我自己的类。 我试过以下:

  • 清洁/重build
  • 删除派生数据
  • 安装4.3文档
  • 重新开始

没有任何运气。

有时代码的意义,但主要是我只是得到“没有完成”。

尝试这个:

打开pipe理器,然后项目选项卡。

清除“派生数据”。 Xcode应该重新索引你的项目,然后代码感应起作用。 至less为我工作。

我知道这是晚,但供参考: http : //sealedabstract.com/code/when-xcode-4s-code-completion-autocomplete-breaks/

  • closures该项目,让XCode仍在运行。

  • 打开XCode的组织者窗口,进入项目选项卡,select正确的项目,并点击“派生数据”旁边的删除button。

  • 退出XCode。

  • 在Finder中导航到项目的.xcodeproject文件。 右键单击,select“显示包装内容”。

  • 保留project.pbxproj文件,但删除project.xcworkspace文件,任何.pbxuser文件和整个userdata文件夹。

  • 在XCode中打开项目。 你会看到Xcode的CPU使用率高达10-60秒左右,这取决于你的项目的大小。 活动窗口会显示“索引”

  • 当你的CPU峰值回到地球,代码完成将再次工作。

有很多删除在那里,所以请小心,但这肯定为我工作。

我一直在做这个,对我来说是多次的(之前尝试了上面的所有内容)。

编辑:现在我只是打空间,退格(Mac版)和重build…工作很好。 然后,请记住滚动(有时,直到您滚动某处的颜色才显示出来)

  1. find您的前缀文件:“ProjectName_prefix.pch”。
  2. 注释掉一些行 (基本上改变它)
  3. build立你的项目,没有关系,如果失败或不。
  4. 取消注释。
  5. 重新构build。

我打赌只有第2步(修改前缀)是什么,但这些基本上让你回到运行。 突然之间,所有事情都神奇地重现自我,完成function。

祝你好运,如果这不能解决它,也许尝试这样做到你的依赖pch文件(three20或FB api的)

清除“派生数据”只对我暂时工作。 我必须这样做,然后重新启动Xcode每天3-4次,以获得代码感觉再次工作。

我发现真正的原因是在Target的 Build Settings中。 我将标题searchpath中的所有内容移动到用户标题searchpath ,并且已修复。 就我而言,我正在使用的框架是RestKit。

顺便说一句,我想出了这个,因为我添加了另一个项目( QuickDialog )到我的项目,我很好奇,它使用用户头searchpath ,而不是标题searchpath 。 这是他们之间的差异。

您可以通过更改像这样的构build设置来解决该问题, PreCompile Prefix Headers:NO

仅供参考,如果一个文件没有代码意义,但您的项目的其余部分,检查它添加到目标。 一旦我这样做,我的代码感觉回到该文件。

这已经过时了,但答案只是把代码移动到一个新的文件夹,代码感应现在应该工作。

当我添加一个新的Objective-C类时,发生了这种情况,并且代码感仅对新添加的.m和.h文件(在本文中为XCode 4最新更新)不起作用。

closures所有的xcode窗口

从xcode> window> organizer中删除所有项目,然后重新启动项目。 现在它会正确地感知和索引你的项目。

我在这里详细写了一下。

基本上我的解决scheme是本地化。 我从xcode 3.2.5升级到xcode 4,然后使用内置的界面构build器,并打开本地化的XIB文件意外将我的源文件放在en.lproj目录。 将它们移回Classes文件夹后,它可以很好地工作。

再一次,为了帮助其他人解决这个问题,在我的情况下,升级到Xcode 4.3。

当然,我尝试在这篇文章中提供的解决scheme,并没有一个工作。 但是在Finder中移动项目位置的build议带来了一些Code Sense,但是这些build议没有任何意义。

我最终删除了我的项目,并从git仓库中重新克隆它 。为我提供了Code Sense。

当我的Xcode的代码感应停止工作时,我会在后台打开第二个项目(这通常是我第一次打开项目,但一段时间后代码感觉不再起作用)。 所以我做的是在Xcode中打开第二个项目。 Xcode将开始索引第二个项目,神奇的是我的主要项目的代码感回来了。

在Lion上运行Xcode 4.3.1

希望这有助于某人。

从这里的评论我能够debugging我的问题,这似乎是一个糟糕的-w标志,铛预处理器不能正确识别。 基本上跑步

defaults write com.apple.dt.Xcode IDEIndexingClangInvocationLogLevel 3

在terminal增加索引器的详细程度,并应该帮助你追查问题。 打开Console.app并查找来自Xcode的消息,searchstringIDEIndexingClangInvocation帮助我find它们。

对我来说,这只是因为该文件没有目标成员。 如果前几个答案不适合你,转到你的.m文件(大概是这个文件,你有麻烦),打开工具视图(编辑 – >实用工具 – >显示文件检查器),并在“目标成员资格“检查你想要这个文件所属的目标。

Interesting Posts