2015-04-26 2 views
3

Я хотел бы использовать библиотеку zipzap в моем проекте swift ios.Не удалось создать модуль Objective-C 'zipzap'

Я использую cocoapods для его интеграции. Когда я запускаю pod install все работает отлично, но когда я делаю import zipzap, он говорит Could not build Objective-C module 'zipzap'.

Я сделал все, что люди рекомендуют here и в похожих вопросах. Но не повезло.

Возможно ли, что эта библиотека просто не совместима с проектами на основе быстрой разработки?

Это мой Podfile:

# Uncomment this line to define a global platform for your project 
# platform :ios, '6.0' 
source 'https://github.com/CocoaPods/Specs.git' 
use_frameworks! 

target 'MyProject-iOS' do 
pod 'Reachability', '~> 3.2' 
pod 'SwiftyJSON', '~> 2.1' 
pod 'zipzap', '~> 8.0' 
end 

target 'MyProject-iOSTests' do 

end 
+1

Вы получаете ошибку на линии, которая включает в себя ? Потому что проблема, с которой я столкнулся. – Taha

+0

да, точно .., –

+0

У меня такая же ошибка. Я попытался использовать заголовок моста с объективом-c, чтобы связать фреймворк, но я получаю сообщение об ошибке ZZDataProvider.h в строке «#include » – Unome

ответ

4

Я сталкивался с такой же проблемой. Похоже, что подпсип для zipzap отсутствует. Из-за чего pod заканчивает создание всех файлов заголовков общедоступными. И вот что вызывает проблему.

Я написал свой собственный файл podspec, который публикует только пять заголовков, остальные являются частными. Это решение было основано на podspec.json, найденном в zipzap repo.

Я включил ZipZap в моем проекте следующим образом:

стручок 'ZipZap': podspec => 'https://raw.githubusercontent.com/tahasamad/zipzap/master/zipzap.podspec'

+0

Я попытался сделать то, что вы предложили, но получил следующее: «[!] Платформа целевой «Pods» (OS X 10.10) несовместим с 'zipzap (8.0.3)', который не поддерживает 'osx'. Я запускаю мой на OSX, поэтому ошибка имеет смысл, но когда я сохранял pod 'zipzap': '~> 8.0.3 ", он запускался, но потом не позволял мне импортировать. – Unome

+0

Strange - спецификация zipzap pod spec определенно присутствует, но в формате JSON. И спецификация pod определенно ссылается только на публичные заголовки: https://github.com/pixelglow/ZipZap/blob/master/ZipZap.podspec.json –

3

Я автор ZipZap. Версия 8.0.4 теперь корректно поддерживает фреймворки iOS и OS X, как с CocoaPods, так и без них. После обновления с помощью CocoaPods вы должны просто иметь возможность import ZipZap в Swift и «он просто работает».

Для правильной обработки исключений вам необходимо использовать CocoaPods 0.36 или новее, иначе вы можете получить некоторые предупреждения о сборке.

0

Glen Low's answer сделал это для меня.

Но мне пришлось использовать «импорт zipzap» (все строчные буквы) вместо «import ZipZap» (прописные буквы Z).

Использование CocoaPods 0.38.2 и ZipZap 8.0.4

P.S .: Я не хватает репутации комментировать его ответ. Сожалею.

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