77

Xcode 4 で「古い」Xcode 3 プロジェクトを実行していますが、自分のクラスでコード センスが機能しません。私は次のことを試しました:

  • クリーン/再構築
  • 派生データを削除
  • 4.3 ドキュメントのインストール
  • 再起動

運がなければ。

コードセンスが機能することもありますが、ほとんどの場合、「No Completions」が表示されます。

4

13 に答える 13

128

これを試して:

オーガナイザーを開き、[プロジェクト] タブを開きます。

「派生データ」をクリアします。その後、Xcode はプロジェクトのインデックスを再作成し、コード センスが機能するはずです。少なくとも私のために働いた。

于 2011-06-05T13:45:59.853 に答える
107

私はこれが遅いことを知っていますが、参考のために:http ://sealedabstract.com/code/when-xcode-4s-code-completion-autocomplete-breaks/

  • XCodeを実行したまま、プロジェクトを閉じます。

  • XCodeのオーガナイザーウィンドウを開き、[プロジェクト]タブに移動し、正しいプロジェクトを選択して、[派生データ]の横にある[削除]ボタンをクリックします。

  • XCodeを終了します。

  • Finderでプロジェクトの.xcodeprojectファイルに移動します。右クリックして、[パッケージの内容を表示]を選択します。</ p>

  • project.pbxprojファイルは残しますが、project.xcworkspaceファイル、すべての.pbxuserファイル、およびuserdataフォルダー全体を削除します。

  • XCodeでプロジェクトを開きます。プロジェクトのサイズにもよりますが、XCodeがCPU使用率を約10〜60秒間高くしているのがわかります。アクティビティウィンドウに「インデックス作成」と表示されます</p>

  • CPUスパイクが地球に戻ると、コード補完が再び機能します。

そこにはたくさんの削除が行われているので注意してください、しかしこれは間違いなく私にとってはうまくいきました。

于 2011-11-17T10:51:26.187 に答える
26

私はこれを行ってきましたが、何度もうまくいきました(以前に上記のすべてを試した後)。

編集:スペース、バックスペース(Macバージョン)を押して再構築するだけです...うまくいきます。次に、スクロールすることを忘れないでください (どこかをスクロールするまで色が表示されないことがあります)。

  1. プレフィックス ファイル「ProjectName_prefix.pch」を見つけます。
  2. 一部の行をコメントアウトします。(基本的に変えます)
  3. プロジェクトをビルドします。失敗するかどうかは関係ありません。
  4. コメントを外します。
  5. もう一度ビルドします。

ステップ 2 (プレフィックスの変更) だけがそれを行うに違いありませんが、これらは基本的に実行に戻ることができます。突然、すべてが魔法のように色を変え、機能を完成させます。

それでも問題が解決しない場合は、幸運を祈ります。おそらく、依存関係の pch ファイル (three20 または FB api) に対してこれを実行してみてください。

于 2012-04-20T21:55:53.080 に答える
5

「派生データ」の消去は一時的にしか機能しません。コードセンスを再び機能させるには、それを実行してから Xcode を毎日 3 ~ 4 回再起動する必要があります。

本当の原因はターゲットのビルド設定にあることがわかりました。ヘッダー検索パスからユーザー ヘッダー検索パスにすべてを移動したところ、修正されました。私の場合、使用しているフレームワークは RestKit です。

ところで、私は別のプロジェクト ( QuickDialog ) を自分のプロジェクトに追加していたので、これを思いつきました。それがUser Header Search Pathsを使用していて、 Header Search Paths を使用していないことに興味がありました。ここにそれらの違いがあります。

于 2012-07-06T10:36:58.463 に答える
4

PreCompile Prefix Headers :NOのようにビルド設定を変更することで、この問題を修正できます。

于 2012-09-15T07:08:43.190 に答える
3

参考までに、1 つのファイルにコードの意味がなく、プロジェクトの残りの部分にはある場合は、そのファイルがターゲットに追加されていることを確認してください。それをしたら、そのファイルにコードの意味が戻ってきました。

于 2012-05-16T18:41:14.740 に答える
2

古くからありますが、答えはコードを新しいフォルダーに移動することであり、コードセンスは現在機能しているはずです。

これは、新しいObjective-Cクラスを追加したときに発生し、コードセンスは新しく追加された.mファイルと.hファイル(この投稿中のXCode 4の最新の更新)でのみ機能しません。

于 2011-08-21T06:54:18.137 に答える
2

すべての xcode ウィンドウを閉じる

xcode>window>organizer からすべてのプロジェクトを削除し、プロジェクトを再起動します。これで、プロジェクトが適切に検出され、インデックスが作成されます。

于 2012-03-12T07:47:10.263 に答える
1

詳しくはこちらに書きました。

基本的に、私の修正はローカライズによるものでした。xcode 3.2.5 から xcode 4 にアップグレードした後、組み込みのインターフェイス ビルダーをいじり、誤って XIB ファイルのローカリゼーションをオンにして、ソース ファイルを en.lproj ディレクトリに配置しました。それらを Classes フォルダーに戻した後、完全に機能しました。

于 2011-04-15T10:40:43.657 に答える
0

繰り返しになりますが、この問題について他の人を助けるために、私の場合はXcode4.3にアップグレードしたときに発生しました。

もちろん、私はこの投稿で提供されている解決策を試しましたが、どれもうまくいきませんでした。しかし、Finderでプロジェクトの場所を移動するという提案は、コードセンスを取り戻しましたが、提案は意味がありませんでした。

プロジェクトを削除して、gitリポジトリから再クローンを作成しました。これにより、 CodeSenseが元に戻りました...

于 2012-02-25T22:11:17.893 に答える
0

このコメント hereから、私は自分の側で問題をデバッグすることができました.clangプリプロセッサが正しく認識していなかったのは、悪い -w フラグのようでした. 基本的にはランニング

defaults write com.apple.dt.Xcode IDEIndexingClangInvocationLogLevel 3

ターミナルでは、インデクサーの冗長性が向上し、問題を追跡するのに役立ちます。Console.app を開き、Xcode からのメッセージを探します。検索文字列IDEIndexingClangInvocationがそれらを見つけるのに役立ちました。

于 2013-02-20T17:19:14.083 に答える
0

私にとっては、ファイルにターゲットメンバーシップがなかったため、単純に発生しました。最初のいくつかの回答がうまくいかなかった場合は、.m ファイルに移動し (おそらく、問題が発生しているのはこのファイルです)、[ユーティリティ]ビュー ([編集] -> [ユーティリティ] -> [ファイル インスペクタを表示]) を開き、[ターゲットメンバーシップ」で、このファイルを所属させたいターゲットにチェックを入れます。

于 2013-08-20T15:03:42.300 に答える
0

Xcode のコード センシングが機能しなくなるたびに、バックグラウンドで 2 番目のプロジェクトを開きます (通常、最初にプロジェクトを開いたときに機能しますが、しばらくするとコード センスが機能しなくなります)。そこで、Xcode で 2 つ目のプロジェクトを開きます。Xcode は 2 番目のプロジェクトのインデックス作成を開始し、魔法のようにメイン プロジェクトのコード センスが戻ってきます。

Lion で Xcode 4.3.1 を実行する

これが誰かに役立つことを願っています。

于 2012-04-25T18:21:50.283 に答える