Swiftが初めてで、CocoaPods経由でサードパーティのフレームワークを(おそらく)正しくインストールした後、エラーに苦しんでいます。
エラーは次のとおりです。
<unknown>:0: error: filename "MainController.Swift" used twice: '/Users/myname/Desktop/ProjectName/ProjectName/Controllers/MainController.Swift' and '/Users/myname/Desktop/ProjectName/ProjectName/Controllers/MainController.Swift'
<unknown>:0: note: filenames are used to distinguish private declarations with the same name
Command /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc failed with exit code 1
私が他のフォーラムから収集できる限り、一見明らかなことは、2回使用されているファイルの1つを削除する必要があることです。ただし、それらが2回インストールされる場所を確認できません。/Controllersフォルダーからファイルを削除すると、エラーは「ファイルが見つかりません」などになります。
だから私の質問は、これらの競合するファイルはどこにあり、どのようにそれらの1つを安全に削除するのですか?または、ファイルが1つしかないのに2回使用されているということです。その場合、どうすれば停止できますか。
どうもありがとう。
コメントが失われていると思うので、昨日からこれを構築して実行することができなかったので、答えをトリガーできるかどうかをここで明確にします。
Pods-> Pods/MainControllerフォルダーにSwift=ファイルのみがあります。
ビルドすると、ファイルが見つかりません。しかし、探しているファイルは、App-> Controllersフォルダーにあり、そこから削除しました。ファイルをそこに入れると、「使用済み」エラーが表示されます。
コントローラでファイルを見つけてポッドで検索しようとするのを止めるにはどうすればよいですか?
ありがとう
同じViewController-MainController.Swift
を2回追加した場合は、検索してみてください。
そうでない場合は、コードベースでclass MainController
を検索します。
ポッドに関しては、すべてのポッドをフレームワークとして使用することをお勧めします。
Podfile
で'use_frameworks!'
を使用してみてから、ターミナルからポッド "pod install
"を再インストールしてください。
ファイルがターゲットの「ビルドフェーズ」「ソースのコンパイル」設定に2回含まれていないことを確認します。 project.pbxprojをマージすると発生する可能性があります。
主なアイデアは...はい、重複したクラスをチェックします。しかし、私の場合は何もありませんでした。私は大きなプロジェクトを持っていて、WatchKitを追加し、多くのものを追加しました。ある時点で、「重複した」クラスがありました。重複を削除しましたが、問題は残りました。それを修正するために私はこれをしました:
これは、githubとマージするときに、project.pbxprojに含めることができますまたは同様のツール。
これは、お気に入りのテキストエディターでproject.pbxprojを開いて、重複宣言を削除を修正することができます。
問題が解決することを願っています。
Josh O'Connersの回答に追加するのは、彼が推奨した変更を加えることが私の問題の根本であるということです。修正を完了するには、shift-option-command-kを押してビルドフォルダーを消去する必要がありました。
コードデータモデルクラスの場合。コードデータモデルを選択し、エンティティを選択して、「Codegen」の値をManual/Noneに変更します。
それは私に役立ちます。