OSXアプリで使用したいフレームワークを作成しました。 El Capitan
でXcode7に更新してから、import
ステートメントをコマンドキーでクリックしようとすると、Xcodeは次のビューに移動します。
XcodeにSwift表現を適切に表示させるにはどうすればよいですか?以前にそれが発生したことがありました。私の解決策は、やりたくないすべてのプロジェクトファイルを再作成することでした。
私の経験から、この問題には2つの原因が考えられます。 1つ目は、フレームワークが見つからないことです。これを修正するには、ターゲットのビルド設定に移動し、フレームワーク検索パスにパスを追加する必要があります。
_/Users/{user}/path-to-framework-parent-directory
_
またはプロジェクトディレクトリからの相対:
_$(PROJECT_DIR)/path-to-framework-parent-directory
_
別の考えられる原因は、フレームワークへのパスにスペースが含まれていることです。バックスラッシュ_../Project\ Name/frameworks
_でエスケープしようとするか、パス全体を二重引用符_"../Project Name/frameworks"
_で囲むかは問題ではないことがわかりました。その結果、SourceKitはモジュールをロードできませんでした。
$(PROJECT_DIR)
は、スペースを含むパスに展開される可能性があり、それでも同じエラーが発生することに注意してください。そのため、Xcode/SourceKitのバグのように見えます(最新のXcode 7.2-beta3を試しましたが、バグはまだ残っています)。
私のリポジトリは2番目のハードドライブ_/Voluems/Macintosh HD/Repos
_にありました。ハードドライブの名前をHD
に変更したので、パスは_/Volumes/HD/Repos
_のようになり、問題は解決しました。
私にもこの問題があり、他の解決策が機能しませんでした。私はついにそれを私の場合に理解しました:
ターゲット名にもスペースを含めることはできません
名前を変更するには:
Max S.の回答は私を正しい方向に向けましたが、フレームワークパスに「再帰的」オプションを使用していました。
物事を機能させるには、問題のフレームワークの直接の親ディレクトリに直接パスを明示的に追加する必要がありました(「再帰的」オプションが設定された上位のディレクトリの1つへのパスを持つだけでなく)。
HTH
実行中Product-> Clean、Product-> Buildが私のために働いたものです。
私の場合、SDKのフレームワークをpodspecとともに作成して、カカオポッドにしました。
SDKを使用すると同じ問題が発生し、SDKを使用しているファイルにFoundation APIをインポートしたときに修正されました
import Foundation
奇妙なことに、フォルダの名前を「開発者」から「開発」に変更するだけで、問題が解決しました。