摘要:ios
CocoaPods是提供對第三方庫依賴的管理工具,經過CocoaPods咱們能夠方便的管理每個第三方庫:添加、刪除和更新,不須要咱們作太多的配置工做,如此即可直觀、集中和自動化地管理咱們項目的第三方庫。git
本文不對CocoaPods作全面的介紹,想對CocoaPods作更多瞭解的能夠閱讀這篇文章:Cocoapods完整使用篇。本文主要介紹一下如何給本身的開源項目添加CocoaPods的支持。session
1、建立一個配置文件(pod spec create 文件名)框架
要使得咱們的項目支持CocoaPods,就須要告訴CocoaPods咱們的項目的一些信息:源文件地址、支持的平臺和版本、編譯條件、依賴的系統庫及第三方的庫等等。這些信息是經過一個以「spec」爲擴展名的文件存儲起來的。所以,咱們須要建立這個配置文件,編輯好項目的配置信息,而後把這個文件上傳給CocoaPods。工具
pod spec create YQXxxxxxx
2、編輯配置文件(配置項目的信息)ui
9 Pod::Spec.new do |s|
18 s.name = "YQTest" #項目名稱 19 s.version = "0.0.1" #項目版本 20 s.summary = "A short description of YQTest." #項目摘要 28 s.homepage = "http://EXAMPLE/YQTest" 39 s.license = "MIT" 53 s.author = { "yanghy" => "yanghy2013@gmail.com" }
64 #項目支持的平臺及系統版本,若只支持ios,刪除註釋符號 65 # s.platform = :ios 66 # s.platform = :ios, "5.0" 67 68 # When using multiple platforms 69 # s.ios.deployment_target = "5.0" 70 # s.osx.deployment_target = "10.7" 71 # s.watchos.deployment_target = "2.0" 72 # s.tvos.deployment_target = "9.0" 81 s.source = { :git => "http://EXAMPLE/YQTest.git", :tag => 0.0.1" } 92 s.source_files = "Classes", "Classes/**/*.{h,m}" #源文件
118 #依賴的系統框架 119 # s.framework = "SomeFramework" 120 # s.frameworks = "SomeFramework", "AnotherFramework" 121 122 #第三方依賴 123 s.dependency "Masonry", "~>0.6"
135 # 是否支持arc 136 s.requires_arc = true
141 end
3、配置代碼倉庫spa
由於在第二步的配置文件中給版本號配置了:0.0.1,所以咱們需要給咱們的項目配置一個tag,使用以下命令code
1 git tag 0.0.1 #添加一個tag 2 git push --tags #推送tag到遠程
4、驗證咱們的配置是否正確orm
1 pod spec lint YQXxxx.podspec
我在配置過程當中出現吃錯誤:blog
一、由於項目中使用了UIKit,可是在配置中沒有指定平臺,所以在OSX平臺上編譯錯誤
解決辦法:指定項目的平臺 (# s.platform = :ios)
二、沒有指定系統的版本號,在不支持arc的系統下編譯失敗
解決辦法:指定系統版本(# s.platform = :ios, "5.0")
5、提交到CocoaPods
1 pod trunk push YQXxxx.podspec
沒有配置做者的會出現:[!] You need to register a session first.錯誤,此時用以下命令註冊一個會話後再提交
1 pod trunk register email "name" --description="macbook pro"
到此爲止,你就可使用pod search 搜索到你的項目了!