2015-05-30 2 views
0

Я хочу интегрировать некоторые библиотеки obj-c в мой проект Swift через CocoaPods v0.37.2.CocoaPods use_frameworks! причины «Класс X реализован как в Y, так и Z»

Вот мой Podfile:

platform :ios, '8.0' 
use_frameworks! 

target 'MyApp' do 
pod "FBSDKCoreKit", '~> 4.2.0' 
pod 'FBSDKLoginKit', '~> 4.2.0' 
pod 'FBSDKShareKit', '~> 4.2.0' 
end 

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

ObjC [40546]: Класс FBSDKAccessToken осуществляется в обоих/Пользователи/Брайен/Library/Developer/CoreSimulator/Devices/2146BB4A-B290-4538-A090-41DA702BD959/данные/Контейнеры/Bundle/Application/8F5457C5-253A-4E65-B21A-12438B642201/MyApp.app/Frameworks/FBSDKCoreKit.framework/FBSDKCoreKit и/Пользователи/brian/Библиотека/Разработчик/CoreSimulator/Devices/2146BB4A-B290-4538-A090-41DA702BD959/data/Cont ainers/Пачка/Применение/8F5457C5-253A-4E65-B21A-12438B642201/MyApp.app/MyApp. Один из двух будет использован. Какой из них не определен.

(я получил много подобных сообщений, это только пример)

Я уверен, что это вызвано use_frameworks!. Если я удалю этот оператор из моего подфайла и использую заголовок-мосты, эта ошибка исчезнет, ​​и все будет хорошо.

Некоторое время я искал Google, но, похоже, никто не получил эту ошибку в Интернете.

Как избавиться от этой ошибки при использовании use_frameworks!?

ответ

1

Оказалось, что я не использовал use_frameworks! с самого начала и использовал его после того, как начал работать над своим проектом. Это вызвало ошибку, которая привела к тому, что на моих симуляторах было 2 источника одних и тех же libs, и эта ошибка возникла.

Снятие симуляторов и добавление его обратно спасло меня. (Сброс симуляторов не работает, вы должны удалить тренажеры и добавить их обратно через Window > Devices)

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