Подтвердить что ты не робот

Нет такого модуля 'Cocoa' в Swift Playground

Я пытаюсь выполнить некоторый код, используемый в сеансе игровых площадок WWDC, я пытаюсь импортировать фреймворк Cocoa с помощью

import Cocoa

Но я получаю следующую ошибку в помощнике редактора

Playground execution failed: error: <REPL>:3:8: error: no such module 'Cocoa'

Я в 41:20 в видео, если это вообще помогает.

4b9b3361

Ответ 1

Вы используете игровую площадку iOS (на основе UIKit), а не игровую площадку OS X (на основе cocoa). Попробуйте создать новую игровую площадку и выбрать "OS X" в качестве типа вместо "iOS". После этого все должно работать нормально.

Вы также можете изменить тип существующей игровой площадки в File Inspector ("Просмотреть & Инспекторы & rarr; Показать Файловый Инспектор" "в разделе" Настройки игровой площадки "& rarr; Платформа.

По умолчанию новые игровые площадки iOS создаются с использованием шаблонов, включая import UIKit; Игровые площадки OS X создаются с использованием шаблонов, в том числе import Cocoa, поэтому, если вы вручную вводите "import Cocoa", это, вероятно, признак того, что вы ошиблись.

Ответ 2

Если вы получаете эту или аналогичную ошибку, несмотря на правильную установку игровой площадки, попробуйте следующее:

Закройте XCode и с терминала:

 rm -rf "$(getconf DARWIN_USER_CACHE_DIR)/org.llvm.clang/ModuleCache"

Затем снова запустите XCode, и чаще всего это исправляет многие проблемы с игровой площадкой. Я часто выполняю эту команду во время интенсивного рабочего сеанса игровой площадки (иногда до нескольких раз в час) и нашел либеральное использование удаления ModuleCache для решения множества странных поведения на игровых площадках.

Если у вас все еще есть проблемы с игровыми площадками, вы можете попробовать:

rm -rf ~/Library/Developer/Xcode/DerivedData

и/или

rm -rf ~/Library/Caches/com.apple.dt.Xcode

Ответ 3

Этот ответ помог мне:

https://forums.bignerdranch.com/t/import-cocoa-in-playground-is-giving-error/8091/2

Я исправил это… никогда не заменяйте игровую площадку iOS игровой площадкой OS X, когда вы называете их     такой же…     это будет придерживаться режима iOS...