Appleの指示に従い、カスタムモジュールを遊び場にインポートする手順を here を含めて)従いました。
プレイグラウンドの実行に失敗しました:/var/folders/z3/kd0nj4ln1rgcpm8bdz7067wh0000gs/T/./lldb/1874/playground1.Swift:7:8:エラー:no such module 'Foo' import Foo
動作中のプレイグラウンドのインポートに回復するにはどうすればよいですか? [編集:注意してください、2つの答えは遊び場をフレームワークに関連付けるための詳細な指示を生成しました。私はそれらの指示に従いましたが、運はありません。 このソリューションでは、Xcodeで何かを再構成する必要があります。私のインストールは明らかに壊れています]
解決策、from Appleサポート、Xcodeの設定を調整することでした。場所::高度な設定は「レガシー」でした。「ユニーク」に変更することにより、挿入しようとしたパスを元に戻すと、Playgroundsはnowフレームワークをインポートできます。
OS XでXcode 7.1を使用する手順は次のとおりです。
新規プロジェクトの作成:OS X Cocoa Framework、Swift。この例では、「TestPlaygroundFMK」という名前を付けました。
新しいSwiftファイルを作成します。
クラスをファイルに追加します。 コードは公開する必要があります。この例ではこれを作成しました。
import Foundation
public class Talk {
public class func sayHello() {
print("Hello from framework!")
}
}
今すぐプロジェクトをビルドします。
メニューバーで、[ファイル]> [ワークスペースとして保存]をクリックします。
新しいPlaygroundを作成し、Swift=ファイルの隣のプロジェクトフォルダー内に保存します。
プレイグラウンドは、プロジェクトと同じ名前である必要がありますnot。
プロジェクトを再度ビルドします。
フレームワークをPlaygroundにインポートして使用します。
import TestPlaygroundFMK
Talk.sayHello()
以下のようにワークスペースを作成します。
次に、Swiftクラスを含むファイルを使用してCocoaフレームワークを作成します
注:フレームワークではなくクラスをプレイグラウンドに追加したい場合は、リンクを確認してください Xcode 7プレイグラウンドに自分のクラスをインポートする方法?
プレイグラウンドは正常に機能していましたが、Xcodeを終了して再度開くと、次のようなエラーが発生することがわかりました。
エラー:/var/folders/ft/bmk8wh6s5ms4my2pxhn3qbp40000gn/T/playground1-9216e0..Swift:3:8:エラー:no such module 'Playground_Sources' import Playground_Sources
...ここで、「Playground」は私のプレイグラウンドファイルの名前です。
これに対する解決策(Xcode 9.0)は、次のとおりです。
opt
-cmd
-0
)私の場合、macOS
に設定されています。それをiOS
に変更してからmacOS
に戻し(再コンパイルは不要)、うまく動作し始めました...それはXcodeを閉じて再び開くまでです。
macOS playgroundsで動作することがわかった唯一のソリューションです。このバグはまだXcode 9.3に存在します。
Xcodeはいくぶんブラックボックスだと言っても過言ではないと思います。私はこれが他の誰にも効果があると主張していませんが、私にとっては、新しい遊び場と新しいフレームワークターゲット、および他のすべての提案されたソリューションを作成した後、同じ問題を抱えた後、最終的に働いたのはワークスペースファイルと(私の場合)ココアポッドでそれを再生します。
なぜこれが機能したのか分かりません。
リリースでフレームワークを構築し、これは私のために働いた。 (Xcode 10.1、Swift 4.2)