最近、cocoapods をインストールしたベース XCode プロジェクトからプロジェクトをセットアップしました。プロジェクトを AppCode 3.1 にインポートすると、CocoaPods を介してインストールされた私の迅速なフレームワークのオートコンプリートが得られません。
ここに私のPodfileがあります
# Uncomment this line to define a global platform for your project
platform :osx, '10.10'
use_frameworks!
target 'Main' do
pod "SwiftyJSON", ">= 2.1.3"
pod 'BrightFutures', '~> 1.0.0-beta.3'
end
target 'MainTests' do
end
ご覧のとおり、2 つのポッドが定義されています (1 つは SwiftyJson で、もう 1 つは BrightFutures です)。これらのポッドは両方とも Swift Frameworks としてインストールされます (したがって、なぜuse_frameworks!
) がそこにあります。
すべてがインポートされ、AppCode で正しく動作しているように見えます (私は 2 つのプロジェクトを持っています。1 つはメイン プロジェクトで、もう 1 つは Pod で、XCode とまったく同じです)、しかし AppCode はインデックスを作成していないようです。 Pod フレームワークのいずれかであるため、これらのフレームワークを使用してもオートコンプリート ステータスがまったく得られません。例として、次のコードでは
import Cocoa
import BrightFutures
@NSApplicationMain
class AppDelegate: NSObject, NSApplicationDelegate {
func applicationDidFinishLaunching(aNotification: NSNotification) {
let f = future { 5 }.map{f in f + 7}
f.onSuccess{callback in println(callback)}
// Insert code here to initialize your application
}
func applicationWillTerminate(aNotification: NSNotification) {
// Insert code here to tear down your application
}
}
次の場合、オートコンプリートが得られません
import BrightFutures
(CocoaPods 以外のものをインポートしても問題ありません)let f = future { 5 }.map{f in f + 7}
この行またはこの行のオートコンプリートf.onSuccess{callback in println(callback)}
オートコンプリートは、関数aNotification
の引数である他のもの(つまり)で正常にapplicationDidFinishLaunching
機能します
AppCode に欠けている設定がありますか、それともまだ実装されていないものですか? XCode では、オートコンプリートは完全に正しく機能します。
編集: AppCode では、.framework ファイルが赤くなっていることにも気付きました (これが何かを意味するかどうかわかりませんか?)