7

RefactorXcode 4.4と4.4.1の両方で、作業中の特定のプロジェクトで同じ問題が発生しています。メニューオプションからクラスまたは変数の名前を変更できないようです。

名前を変更しようとするたびに、クラス/変数の新しい名前を入力し、クリックPreviewすると、左下のスピナーが。で始まりますFinding files...。ただし、次のようなメッセージが表示されます。

選択範囲は、名前を変更できるタイプではありません。

別の選択をして、再試行してください。

これはXcodeの特定のインストールでは問題ではないと確信しています。他のプロジェクトを正常にリファクタリングできるため、この特定のプロジェクトをリファクタリングできないように見えるだけです。

何かアイデアはありますか?私はこのプロジェクトのために特にエキゾチックな構成を持っていません、それはただランダムな苦痛のようです。派生データをすべて削除してインデックスを再作成しましたが、役に立たないようです。

他のプロジェクトでも問題なく動作するので、実際のプロジェクトファイル自体を再生成することを試みることができると思います。これを自動的に行う方法があるかどうかわかりませんか?

4

6 に答える 6

6

それらがドロップボックスにある場合は、そこから取り出します。プロジェクトファイルを破壊します。私はそれを何度も経験しましたが、リファクタリング>名前の変更が機能しない場合があります。

于 2013-09-29T21:15:52.797 に答える
4

さまざまなこと (プロジェクト設定の微調整、pch など) を試した後、この問題を解決することができましたが、この問題を解決するための非常に単純な (そして完全に直観に反する) 方法があったことがわかりました。

私がやったことはすべて: -

  1. プロジェクトフォルダー全体をコピーします( からProjectまでProject Copy)。
  2. Project(元のフォルダー) をゴミ箱に移動します。
  3. に名前を変更Project CopyProjectます。

不思議なことに、すべてが正常に機能するようになりました。

なぜこれが機能するのか、私には本当にわかりません。前に述べたように、私はすでにすべての派生データなどを削除していたので、なぜこれが自発的に機能するのかわかりませんが、そうです。

Xcodeがいかに厄介であるかを明らかにするので、これに光を当てることができる人なら誰でも感謝します.ボンネットの下で何が起こっているのかを理解することは常に有益です.

于 2012-08-20T11:18:35.103 に答える
2

バグのあるインデックスのように聞こえます。

通常、nuke from space オプションを使用して、派生データ ディレクトリ内のすべてを削除します。

あなたがそれを変更していない限り(私は私のものをに変更/tmp/bbum-derivedします)、それは次の場所にあります:

~/Library/Developer/Xcode/DerivedData

したがって、Xcode を終了して、次のようにします。

rm -rf ~/Library/Developer/Xcode/DerivedData

はい、少し強引ですが、機能します。UI から Xcode に強制的にインデックスを再構築させることもできますが、私は気にしません。もちろん、私は日常の仕事の一環として、これとあれのかなりの数の「奇妙な」ビルドもインストールしています...

(これrm -rfです 。Unix の用語では、「すべてを破棄し、質問しないでください」という意味です。危険です。そのコマンドを間違って入力しないでください。)

于 2012-08-10T14:20:12.353 に答える
0

GUI のどこかにアクティブな選択があるようです。おそらく、ファイルまたはクラスの一部が選択されていますか? すべてのサブ ウィンドウで選択を解除して、リファクタリングを再試行してください。

于 2012-08-10T14:20:38.573 に答える