回答:
これは、テキストエディターでpbxprojファイルを手動で編集することなく、Xcode内から実行できます。
方法は次のとおりです。
Finderでソースフォルダの名前を変更します。仮想(黄色)プロジェクトフォルダーが指す実際のフォルダーが変更されたときにXcodeが自動的に検出しないため、これによりプロジェクトが最初に壊れ、そのフォルダー内のすべてのファイルがXcodeで赤に変わります。心配しないでください。ステップ3で修正します。
Xcodeで、左側のサイドバーにある(現在は壊れている)仮想フォルダをクリックし、Finderの名前と一致するように名前を変更します(実際には、好きな名前を付けることも、名前をまったく変更しないこともできますが、それはおかしいでしょう) )。フォルダー内の赤いファイルは修正されませんが、問題ありません。
Xcodeの右側のサイドバーで、次のスクリーンショットに示すアイコンをクリックして、ファイルダイアログを表示します。以前に名前を変更したフォルダを選択します。これにより、仮想フォルダーがディスク上の実際のフォルダーに再度関連付けられ、内部のすべてのファイルへのリンクが自動的に修正されます。
ビルド設定で、古いフォルダー名を検索し、見つかったオカレンスを手動で名前変更します。通常、oldfolder / prefix.pchとoldfolder / info.plistの2つがありますが、他にもある場合があります。
すべて完了!
編集:このオプションはXcode 5にも存在しますが、デフォルトでは非表示になっています。これを表示するには、[テキスト設定]パネルの上にあるインスペクタの細い[IDとタイプ]ヘッダーをクリックして展開します。
私は何十回もそれをやった:
.pbxproj
プロジェクトバンドル内のファイル(コンテキストメニューの[パッケージの内容を表示])をテキストエディターで開きます。タスク: XcodeとFinderの両方で、「Play」の名前を「Play2」に変更します。
これを変える:
これに:
手順:
//何よりもまず、Finderでプロジェクトをバックアップしてください!
//上記のすべての手順は単純で、副作用はありません// // Finderで内部フォルダー(画像の中央の列)の名前を変更します(.xcodeprojと同じレベルのフォルダー)
XCode4でプロジェクトの名前を効果的に変更する方法は次のとおりです(ファイルフォルダーを含む):
最初に-Xcodeプロジェクトの名前を変更しないでください!!!
必要な場合は、その下にある可能性があります-私はそれを動作させることができず、新しいプロジェクトを作成してしまい、既存のファイルをすべてコピーし始めました。Xcodeはとてもああ....ファイルの名前を「名前」から「名前」に変更するなど、非生産的なものがたくさんあります。まあ、まあ楽しんでください。
私は答えまたはこれを回避する方法を見つけました:「パッケージの内容を表示」を右クリックしてpbxprojファイルを開き、そこでproject.pbxprojファイルを編集します-パスなどの参照の名前を変更する必要があります-ただ検索「/」が追加されたフォルダ名。
それだ。それが誰かを助けることを願っています。
上記のさまざまな答えを調べて、自分自身を試した後、私は自分のために要約します。現在のプロジェクト名がProjAbcで、名前をProjDefに変更するとします。
そのプロジェクトのXcodeを終了します。
Finderで、フォルダABOVE ProjAbc.xcodeprojをバックアップ用に複製します。
新しいプロジェクト名に合わせる必要がある場合は、FinderでABOVE ProjAbc.xcodeprojフォルダーの名前を自由に変更します。
Finderで、ソースファイルフォルダの名前をProjAbc.xcodeprojと並行してProjAbcからProjDefに変更します。
Xcode for ProjAbc.xcodeprojを開きます(Project Navigatorでは、仮想ソースフォルダーProjAbc内のすべてのファイルが赤色になります)。
Xcodeで、左側のサイドバーにあるプロジェクトナビゲーターの(現在は壊れている)仮想フォルダーをクリックし、Finder-ProjDefの名前と一致するように名前を変更します。フォルダー内の赤いファイルはまだ修正されませんが、問題ありません。
Xcodeで(左側のサイドバーで仮想フォルダーを選択したまま)右側のサイドバーのファイルインスペクターで、下のスクリーンショットに示すアイコンをクリックして、ファイルダイアログを表示します。ファイルダイアログで、以前に名前を変更したフォルダー(ProjDef)を選択します。これにより、仮想フォルダーがディスク上の実際のフォルダーに再度関連付けられ、内部のすべてのファイルへのリンクが自動的に修正されます。
XcodeのProject Navigatorで、ProjAbcプロジェクト名をクリックし、名前をProjDefに変更します。
Xcodeで、ProjDefターゲット内(Project NavigatorのプロジェクトProjDef内)で「Build Settings」を開きます。* -Info.plistファイルと* -Prefix.pchファイルの両方のフォルダー名とファイル名を、ProjAbcではなくProjDefを含むように変更します。
Xcode、Project Navigator、ProjDef virtual sourcesフォルダーの「Supporting Files」で、*-Info.plistファイルと* -Prefix.pchファイルの両方の名前を再度変更して、ProjAbcの代わりにProjDefを含めます。
Xcodeメニューで、Product / Scheme / Manage Schemes ...(またはXcodeの左上にあるスキームバーの "ProjAbc">スキーム名をクリックし、 "Manage Schemes ..."を押します)とダイアログボックスでSchemeの名前をProjAbcをProjDefに変換し、[OK]ボタンを押します。プロジェクト名が単一の単語で構成されている場合、今すぐ実行できます!
Xcodeで、Supporting Files / *-Prefix.pchファイルの一番上のコメント行を編集し、ProjAbcをProjDefに置き換えます(2回)。もちろん、このコメントの修正はオプションです。
Xcodeを終了します。
FinderでProjDef.xcodeprojをポイントし、テキストエディターで開きます。(これをTextWrangler.appで開くか、マウスを右クリックしてポップアップメニューで[パッケージの内容を表示]を押し、TextEdit.appのproject.pbxprojファイルを編集します)
テキストエディターで、一度表示されるはずの "ProjAbc"(単語全体、大文字と小文字の区別)を検索し(段落:/ * Begin PBXNativeTarget section * / in line:productName = ProjAbc;)、それを "ProjDef"に置き換えます。実際、プロジェクトはとにかく実行できるので、このステップはオプションです。
プロジェクト名が「ProjDef Geh」のように2つ以上の単語で構成されている場合は、次の手順を実行する必要があります。仮想ソースファイルフォルダーのFinderフォルダーへの参照を検索します-
テキストエディターから保存し、テキストエディターを終了します。
それでおしまい。上記のように、プロジェクト名が単一の単語で構成されている場合は、手順11の最後で実行できます。
上記の回答、特にNick Lockwoodの回答は本当に役に立ちました。
私はXcodeの8内のフォルダのカップルと改名し、さらに2つの問題が発生しました:A)を「コピーエラー作業から欠落」 B)コアデータがクラッシュします。
これら2つの問題を解決する方法:
A) " 作業コピーのエラーから欠落しています」
私は以下の答えが非常に役立つと思いました:Swift 3 / Xcode 8 Upgrade-作業コピーエラーから数百のDerivedDataファイルが欠落しています
基本的にXcode 8には厳密なソース管理があり、上記のエラーが発生する可能性があります。必ず:
あなたはすでにソース管理を有効にしていると思います。まだ行っていない場合、または私の指示に従って動かなくなった場合は、提供されているリンクの詳細な指示に従ってください。
B)コアデータがクラッシュする
フォルダの名前を変更すると、コアデータが台無しになることがあります。これにはいくつかの理由が考えられます。以下は、私が提案できるいくつかの修正です。
AppDelegateモデル名が正しくありません。これは私の状況の場合でした。AppDelegateに移動して、を見つけますlet container = NSPersistentContainer(name: "YOUR CORE DATA MODEL NAME")
。名前が正しいことを確認してください。
将来(この投稿から数年後、AppleがCore Dataを再び変更するとき)、または古いバージョンのCore Dataを使用している場合は、AppDelegateを注意深く確認してください。おそらく、コアデータをめちゃくちゃにしているファンキーなものがあります。
xcdatamodeldのモデル名が正しくありません。Finderに移動し、テキストエディターで.xcdatamodeldを開きます。
以下を確認してください。
<plist version="1.0">
<dict>
<key>_XCCurrentVersionName</key>
<string>YOUR CORE DATA MODEL NAME.xcdatamodel</string> <-- Make sure this is correct.
</dict>
</plist>
詳細はこちら:コアデータモデルファイルが名前変更時に読み込まれない
プロジェクトへのソースプロジェクトの古い参照がある場合、プロジェクトを複製するとき(すべての変更が両方のプロジェクトに影響を与える)ここにソリューション
================================================== ======================