Alamofire скомпилирован с более старой версией языка Swift (2.0), чем предыдущие файлы (3.0) для архитектуры x86_64

Когда я перемещаю свою программу на XCode8, я получаю эту ошибку: Alamofire скомпилирован с более старой версией языка Swift (2.0), чем предыдущие файлы (3.0) для архитектуры x86_64. Я обновил Alamofire до версии 4.0 и установил для версии Use Legacy Swift Language значение NO. В чем дело?

4 ответа

Решение

Обновите ваши какао-стручки, очистите папку с производными данными и попробуйте запустить снова.

В xcode 8 папка производных данных изменена,

Перейдите в Файл -> Настройка рабочего пространства -> затем посмотрите это изображение,

введите описание изображения здесь

Нажмите -> на пути и очистите эту папку производных данных.

Удалите модули и установите их снова. Используйте команды ниже для установки модулей в приложении

1) обновление pod-репо (убедитесь, что вы находитесь в корневой папке)

2) sudo gem установить cocoapods --pre (убедитесь, что вы находитесь в корневой папке)

3) перейдите в папку вашего приложения и выполните следующую команду:

pod init

4) установка пакета

Удалите папку с производными данными, очистите приложение и запустите его.

Если вы используете Карфаген, попробуйте запустить:

carthage update --no-use-binaries

Для меня проблема была с Карфагеном, потому что я вручную установил версию Alamofire старой версии.

github "Alamofire/Alamofire" ~> 3.0

Чтобы решить проблему, зайдите в Cartfile и просто удалите версию, как это:

github "Alamofire/Alamofire"

Зайдите в консоль и нажмите:

обновление карфагена

Теперь ваш фреймворк генерируется с хорошей версией

Другие вопросы по тегам