2015-10-23 2 views
9

Я нахожусь на самом последнем Xcode 7.1, и мой проект использует Swift 2.1. Я пошел по всем направлениям на Swift website для начала работы (вкладка Dynamic Framework), и все строит только отлично, пока я не попытаюсь установить import RealmSwift в моем классе. Компилятор выдает следующее сообщение об ошибке на линии я пытаюсь импортировать RealmSwift:Realm с проектом Swift 2.1 не будет создан при импорте RealmSwift (файл модуля был создан старой версией компилятора)

error: module file was created by an older version of the compiler; rebuild 'RealmSwift' and try again: /Users/USERNAME/Desktop/iosDev/PROJECTNAME/RealmSwift.framework/Modules/RealmSwift.swiftmodule/x86_64.swiftmodule 

Все файлы находятся в корневом каталоге (${PROJECT_DIR}RealmSwift.framework и Realm.framework).

Я искал и искал ответ, обновил Xcode, удалил и переконфигурировал библиотеку. Я не уверен, что значит «перестроить RealmSwift» (я новичок в быстром). Ошибка возникает только при попытке использовать библиотеку в моем классе или использовать плагин Xcode для создания нового объекта модели Realm.

ответ

9

Realm Swift 0.96.2 был выпущен 26 октября 2015 года, добавив поддержку Xcode 7.1 и Swift 2.1. Это должно решить проблему, которую вы видели. Релизы области до 0,96.2 были построены с помощью Xcode 7 и поддерживались Swift 2.0.

+1

Спасибо! Я загрузил и установил его, и он был построен в первый раз! Я не могу дождаться, чтобы заглянуть в эту библиотеку. Еще раз спасибо! Эта ситуация научила меня нескольким вещам :) – drpcken

2

Я также использую Realm в последней версии Swift, но вместо метода Dynamic Framework я использую версию Cocoapods для установки.

Это работает для меня.

Но, в любом случае, это, конечно, не решает вашу проблему :).

Большую часть времени эту ошибку можно решить, просто очистив проект. В меню Xcode выберите Product, а затем Clean. У меня была такая же ошибка с некоторыми библиотеками SQLite, которые я использовал, и это исправляло ее большую часть времени.

+1

У меня было ощущение, что использование динамического пути может вызвать проблемы. Позвольте мне попробовать с какао-стручками и посмотреть, работает ли это. Уборка на самом деле не работала :( – drpcken

+1

Ну ... а не какао-стручки Я попробовал carthage. Следул инструкциям и получил ту же самую проблему. Должны быть файлы, которые я получаю из Realm. Я попробую с CocoaPods рядом, но я Предположим, что это встроенные файлы. – drpcken

+2

Те же проблемы с Dynamic Framework. Проблема была решена путем переключения на метод CocoaPods. – NeoHQ

1
  1. Clone репо или скачать как Zip файл и открыт: https://github.com/realm/realm-cocoa

  2. Откройте окно терминала (Mac) или какой-либо сопоставимый альтернативу.

  3. На mac вы перейдете в каталог репо через. cd ~/Path/To/The/Repo в окне терминала. cd обозначает каталог изменений.
  4. Затем запустите эту команду: REALM_SWIFT_VERSION = 2,1 ш build.sh сборки, которая заставит проект, который будет обновлен до Swift 2.1

  5. Тогда вы сможете перетащить рамки обратно в свой проект.

REALM_SWIFT_VERSION - Измените свою версию Версии Swift (см. Последнюю версию Swift 2.1).

Это займет несколько минут, чтобы построить свою конкретную версию.

Смежные вопросы