Подтвердить что ты не робот

Ошибка при запуске pod install с быстрым

Я новичок в Swfit и Cocoapods. Я выполнил инструкцию от Cocoapods

Ниже мой подфайл:

platform :ios, '8.2'

pod 'SwiftyJSON', '~> 2.1'
pod 'SwiftSpinner', '~> 0.6'
pod 'Alamofire', '~> 1.1'
pod 'SuperRecord', '~> 1.2'
pod 'Toucan

Когда я сделал pod install, я получил следующую ошибку:

 Pods written in Swift can only be integrated as frameworks; this feature is still in beta. Add `use_frameworks!` to your Podfile or target to opt into using it.

пожалуйста, помогите?

Обновлено:

Ниже мой консольный журнал:

$ pod install
Analyzing dependencies
Downloading dependencies
Installing Alamofire (1.1.4)
Installing SuperRecord (1.2)
Installing SwiftSpinner (0.6.0)
Installing SwiftyJSON (2.1.3)
Installing Toucan (0.2.0)
[!] Pods written in Swift can only be integrated as frameworks; this feature is still in beta. Add `use_frameworks!` to your Podfile or target to opt into using it.
4b9b3361

Ответ 1

Добавьте "use_frameworks!" для вашего подфайла, потому что:

Поскольку Apple не позволяет создавать статические библиотеки, которые содержат Swift. В отличие от Objective-C, Apple не отправляет стандарт Swift библиотеки времени выполнения с iOS. Это отделяет языковой вариант от версия платформы. Когда вы создаете приложение со Swift, вы ответственный за то, чтобы отправить их. По умолчанию Xcode использует swift-stdlib-tool для обработки копий стилей Swift runtime, но инструментальные средства не подходят при попытке отправить фреймворки, которые используют Swift с приложением Objective-C. Ваш исполняемый файл приложения и рамки, которые вы отправляете, будут использовать тот же набор дилибов, которые встроенный в подкаталог Frameworks пакета приложений.

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

Ссылка: http://blog.cocoapods.org/CocoaPods-0.36/

Ответ 2

Добавьте "use_frameworks!" в подфайл:

См. ниже пример подфайла

target 'MySample' do 

pod 'AFNetworking', '~> 2.5'

pod 'Net', '~> 0.2' //This is a sample in Swift

use_frameworks! // 
end

Ответ 3

как написано в Podfile, он говорит uncomment use_frameworks! вы используете Swift, так что все, что вам нужно сделать, разобрать эту строку, и все работает просто отлично.

# Uncomment this line to define a global platform for your project
# platform :ios, '8.0'
# Uncomment this line if you're using Swift
use_frameworks! 

target 'YourProjectName' do
  pod 'SwiftyJSON', '~> 2.1'
  pod 'SwiftSpinner', '~> 0.6'
  pod 'Alamofire', '~> 1.1'
  pod 'SuperRecord', '~> 1.2'
  pod 'Toucan
  // all other pods goes here 
end

target 'YourProjectName' do

end

target 'YourProjectName' do

end