2

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 を使用しています。また、これは私の 3 番目の xcdatamodel バージョンです。バージョン 1 と 2 は Player.h を使用しました。

エラーのスクリーンショットは次のとおりです。 Player.m - レキシカルまたはプリプロセッサの問題 - 「Person.h」が見つかりません

4

3 に答える 3

6

clean buildを試してください。うまくいかない場合はXcode を再起動てください。うまくいかない場合は、DerivedData ディレクトリを削除してください

Xcode は時々混乱します。

于 2012-10-05T08:21:47.363 に答える
2

Cmd+Alt+Shift+K を押すと、スーパー クリーンを実行できます (実際の用語はわかりません)。これにより、クリーンが実行され、ビルド フォルダーからすべてが削除されます。

于 2012-10-05T09:59:29.513 に答える
0

非常によく似た問題があり、プロジェクト設定の不足しているコンパイルソースを削除して解決しました。それを行うには、次の手順に従います

  1. プロジェクトページをクリックしてください。このページには、アプリの一般設定が含まれています
  2. [ビルド フェーズ] を選択します。
  3. [ビルド フェーズ] セクションで、コンパイル ソースを選択します。
  4. クラスやファイル、またはコンパイルが必要なものが不足している場合。
  5. 透かしファイルを選択し、このセクションの下部にあるマイナス記号をクリックします。

クリックするだけでプロジェクトが実行されます。これが他の人に役立つことを願っています。

于 2016-05-24T07:03:45.827 に答える