Не в состоянии импортировать RestKit с динамическими структурами Cocoapods

У меня установлена ​​предварительная версия cocoapods, 0.26, и я пытаюсь установить последнюю версию RestKit. В моем podfile Я включил use_frameworks! флаг, заставляющий cocoapods использовать динамические рамки.

Ввод import RestKit в моем файле swift вызывает сбой сборки: 'RKValueTransformers.h' file not found, RestKit настроен на использование нескольких других библиотек и включение их заголовков в проект (AFNetworking, RKValueTransformers, TransitionKit и т. Д.)

В соответствии со статьей для авторов cocoapod, я считаю, что проблема заключается в том, что способ импорта и включения этих библиотек должен быть изменен для работы с динамическими фреймворками и cocoapods. Либо автоматически сгенерированный файл зонтика должен импортировать эти файлы для использования, либо RestKit должен импортировать эти библиотеки, используя @import RKValueTransformers или же #import <RKValueTransformers/RKValueTransformers.h>,

Я не являюсь экспертом в Objective C, Cocoapods или RestKit, поэтому хочу посмотреть, получится ли кто-нибудь на эту работу, и делаю ли я что-то не так или требуется изменение, внесенное в RestKit.

2 ответа

Решение

Это ошибка в настоящее время в RestKit. У Сэма Гиддина прямо сейчас есть открытый пиар, который решает проблему. Я сделал разветвление RestKit, которое я использую в своем проекте, с коммитами из PR, чтобы обойти эту проблему, пока они не слились в исправлениях и не сделали новый выпуск.

Я отправил ответ на аналогичный вопрос

Вот прямая тупая копия ответа, так что это не только ответ по ссылке:)

Я тоже долго боролся с этим, пока строил частный модуль Swift-Framework-Pod, который зависит от RestKit. После долгой борьбы я разбудил RestKit и взломал обходной путь.

Недостатки в том, что вы должны использовать Cocoapods 0.39, который довольно унаследован, а взломанная версия RestKit разветвлена ​​на 0.25.0, так что она также не самая новая из новых.

Чтобы использовать ответвление, в вашем Podfile замените модуль 'RestKit', ... на модуль 'RestKit',: git => ' https://github.com/resmio/RestKit',: tag => 'v0.25.0 -use-рамка

Также вам может понадобиться взломанная версия AFNetworking, что также создает некоторые проблемы. То же самое, замените модуль 'AFNetworking', ... на модуль 'AFNetworking',: git => ' https://github.com/resmio/AFNetworking',: tag => 'v1.3.4-use-frameworks'

Я был бы рад, если бы вы дали мне знать, если это не помогло вам, и если да, распространите слово!:)

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