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

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

4 ответов


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

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

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

enter image description here

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


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

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

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

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

pod init

4) Установка pod

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


Если вы используете Carthage, попробуйте выполнить:

carthage update --no-use-binaries

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

github "Alamofire/Alamofire" ~> 3.0

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

github "Alamofire/Alamofire"

заходим в консоль и нажмите :

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

enter image description here

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