#swift #cocoapods
#swift #cocoapods
Вопрос:
Я пытаюсь добавить cocoapods в swift. Я добавил файл заголовка в «Настройки сборки» -> Заголовок моста Objective-C -> ProjectName/ProjectName-Bridging-Header.h
ЗАТЕМ в ProjectName-Bridging-Header.h
импортируйте ReactiveCocoa / ReactiveCocoa.h и импортируйте Mantle/ Mantle.h
При его сборке ошибка отображалась следующим образом : :0: ошибка: /Users/…/Pods/Headers/ReactiveCocoa/ReactiveCocoa/RACSignal Operations.h:640: ожидаемый селектор для метода Objective-C:0: ошибка: :0: ошибка: /Users/ …/Pods/Headers/ReactiveCocoa/ReactiveCocoa/RACSignal Operations.h:647: ожидаемый селектор для метода Objective-C:0: ошибка: /Users/…/Pods/Headers/ReactiveCocoa/ReactiveCocoa/RACSignal Operations.h:654: ожидаемый селектор для метода Objective-C. :0: ошибка:/Users/…//Pods/Headers/ReactiveCocoa/ReactiveCocoa/RACSignal Operations.h:640: ожидаемый селектор для метода Objective-C:0: ошибка: /Users/…/Pods/Headers/ReactiveCocoa/ReactiveCocoa/RACSignal Operations.h:647: ожидаемый селектор для Objective-Метод C: 0: ошибка: /Users/…/Pods/Headers/ReactiveCocoa/ReactiveCocoa/RACSignal Operations.h:654: ожидаемый селектор для метода Objective-C: 0: ошибка: /Users/…/Pods/Headers/ReactiveCocoa/ReactiveCocoa/RACSignal Operations.h:640: ожидаемый селектор для метода Objective-C:0: ошибка: /Users/…/Pods/Headers/ReactiveCocoa/ReactiveCocoa/RACSignal Operations.h:647: ожидаемый селектор для метода Objective-C: 0: ошибка: /Users/…/Pods/Headers/ReactiveCocoa/ReactiveCocoa/RACSignal Operations.h:654: ожидаемый селектор для метода Objective-C.
Комментарии:
1. В лабораториях WWDC другу сказали, что проблема на самом деле вызвана препроцессором, и она должна быть исправлена с помощью
#undef or
,#undef and
amp;#undef not
. К сожалению, у меня это не сработало. 🙁2. Спасибо за ответ ( : да… Я тоже пробовал этот способ, у меня тоже не получилось.
Ответ №1:
Случается, что компилятор генерирует ошибку, когда видит методы с именами and , or, not . Три из них действительно существуют, именно там, где указывает компилятор, в файле RACSignal Operations.h в строках с номерами 640, 647, 654.
Все, что вам нужно, это переименовать эти методы с помощью инструмента рефакторинга. Например, вы можете добавить префикс rac_, поэтому у меня будет rac_and, rac_or, rac_not . Просто найдите этот метод в RACSignal Operations.h, щелкните правой кнопкой мыши и выберите refactor-переименовать.
Кроме того, я настоятельно рекомендую прочитать этот пост о ReactiveCocoa и Swift: быстрая реакция
Комментарии:
1. Также ни одно из этих слов на самом деле не является зарезервированным словом, и, вероятно, это ошибка компилятора, которая будет исправлена в будущем.