2016-12-04 4 views
1

Я новичок в iOS и работаю над приложением в Swift. Я хотел бы использовать CocoaPods для управления зависимостями, но у меня возникают проблемы. Я смог установить CocoaPods на своем Mac, запустить pod init для создания моего файла подкачки и запустить pod install, чтобы установить зависимости просто отлично. Файл .xcworkspace был установлен, и я использовал его с моим проектом.Проект Swift iOS не будет компилироваться, если я добавлю библиотеку CocoaPod

Проблема возникает, когда я добавляю какие-либо контейнеры в мой файл подкачки и запускаю программу pod install, а затем собираюсь создать мое приложение, есть ошибки в файлах pod, которые устанавливаются и проект не будет создан. Я пробовал много разных стручков, и у всех есть подобные ошибки. Я предполагаю, что ошибки связаны с версией Swift, но я недостаточно разбираюсь в инструментах, чтобы знать, как их настроить.

Проект будет построен отлично, если я удалю контейнеры из подкачки и снова запустил установку pod.

Ошибки во всем файлам и такие вещи, как:

Expected declaration 
Consecutive declarations on a line must be separated by ';' 
Expected '{' after operator name in operator declaration 

Мои среды функции

  • стручок --version = 1.1.1

  • XCode Version = 8,2 бета (хотя я вижу те же проблемы на 8.1)

Мой podfile:

# Uncomment the next line to define a global platform for your project 
platform :ios, '9.0' 

target 'MySampleApp' do 
    # Comment the next line if you're not using Swift and don't want to use dynamic frameworks 
    use_frameworks! 

    # Pods for MySampleApp 
    pod 'Marshal', '~> 1.0' 
    pod 'FontAwesomeKit', '~> 2.2' 

end 

Кроме того, приложение я использую это приложение образец стартер от AWS Mobile Hub. Все работает нормально, пока я не добавлю стручок.

Любая помощь будет высоко оценена. Я просто не знаю, куда идти отсюда.

+0

Вы пытались построить другой проект, устанавливающий эти стручки? Я думаю, где-то вы ошибаетесь. Затем найдите, какой шаг неправильный. – aircraft

+0

Я могу построить совершенно новый пустой проект, просто используя эти стручки. Я уверен, что есть какая-то настройка где-либо с коко-каподами или с моим проектом, который запутывает вещи ... Я надеюсь, что у кого-то может быть больше информации об этом. – robmon

ответ

0

Я нашел свою проблему. Библиотека Marshal, которую я пыталась использовать, не была совместимой с Swift 2.3 (она была создана для Swift 3). Пример приложения AWS Mobile Hub использовал Swift 2.3, поэтому я не мог скомпилировать эти два. Я решил использовать другую библиотеку для разбора JSON (pod 'SwiftyJSON', '2.4.0'), и мое приложение прекрасно работает.

+0

Как вы получили MobileHub для работы с быстрым 3? – Munib

+0

Я не получил Мобильный концентратор, работающий с Swift 3. Я использую Swift 2.3 с моим проектом. Мне пришлось использовать Swift 2.3 совместимые версии библиотек, которые я использую. – robmon