CocoaPods 安裝和使用

一. CocoaPods的介紹
什么是CocoaPods狐蜕?CocoaPods是一個負(fù)責(zé)管理iOS項目中第三方開源庫的工具屎债,CocoaPods的項目源碼在https://github.com/CocoaPods/Specs上管理亭姥。
經(jīng)過CocoaPods團(tuán)隊的不懈努力差牛,2016年5月10號以政,CocoaPods終于在其官方博客上宣布正式發(fā)布CocoaPods 1.0帮哈。與此同時,公開了相應(yīng)的Mac版App——CocoaPods App 1.0 馅扣。

CocoaPods App 1.0 的下載地址:https://cocoapods.org/app 現(xiàn)在應(yīng)該是最新的1.1.1版本了

二. CocoaPods的安裝
1. 替換ruby源
CocoaPods是基于ruby ecosystem的斟赚,需要ruby環(huán)境,使用ruby的gem命令差油。所以我們的系統(tǒng)要有ruby環(huán)境汁展。然而Mac系統(tǒng)默認(rèn)會安裝好ruby環(huán)境⊙嵫常可在終端ruby -v
查看ruby版本:
//查看ruby版本ruby -v//輸出信息ruby 2.0.0p648 (2015-12-16 revision 53162) [universal.x86_64-darwin15]

查看ruby源
gem sources -l

默認(rèn)情況下食绿,終端會顯示下面:
*** CURRENT SOURCES ***https://rubygems.org/

當(dāng)然這個源在墻內(nèi)是訪問不到的,所以要更換到ruby-china的鏡像
// 1.移除掉原有的源
gem sources --remove https://rubygems.org
///2.淘寶的源已經(jīng)不更新維護(hù)了,現(xiàn)在使用ruby-china的源
gem source -a https://gems.ruby-china.org
以下命令添加淘寶的源:(不建議繼續(xù)使用)
gem sources -a https://ruby.taobao.org
/// 3.驗證是否替換成功
gem sources -l

如果顯示下面輸出就說明正確:
*** CURRENT SOURCES ***https://gems.ruby-china.org

2. 更新升級 Gem 版本

Gem是管理Ruby庫和程序的標(biāo)準(zhǔn)包公罕,如果它的版本過低也可能導(dǎo)致安裝失敗器紧,解決方案自然是升級Gem,執(zhí)行下述命令即可:
// 更新升級gem楼眷,國內(nèi)需要切換源sudo gem update --system

查看gem版本
gem -v2.6.8

3. 安裝CocoaPods
OS X 10.11 以前安裝命令為:
sudo gem install cocoapods// 安裝cocoapods

Mac系統(tǒng)為OS X EL Capitan安裝命令為:
//安裝最新版本
sudo gem install -n /usr/local/bin cocoa pods
//安裝指定版本
sudo gem install -n /usr/local/bin cocoapods -v 1.0.0
//安裝最新的release beta版本
sudo gem install -n /usr/local/bin cocoapods --pre

如果你想卸載CocoaPods怎么辦铲汪?看下面:
//卸載CocoaPodssudo
gem uninstall cocoapods

4. 更新Podspec索引文件

如果按照上面3個步驟沒問題,用命令pod --version 查看是否安裝成功罐柳,如果成功會顯示pod的版本掌腰。

              • 但是 會出現(xiàn)如下問題

ERROR: SSL verification error at depth 1: unable to get local issuer certificate (20)
ERROR: You must add /C=IL/O=StartCom Ltd./OU=Secure Digital Certificate Signing/CN=StartCom Certification Authority to your local trusted store
ERROR: SSL verification error at depth 2: self signed certificate in certificate chain (19)
ERROR: Root certificate is not trusted (/C=US/O=GeoTrust Inc./CN=GeoTrust Global CA)

出現(xiàn)這個問題的原因主要是Ruby環(huán)境需要2.2版本以上,所以要更新Ruby環(huán)境张吉。

更新Ruby環(huán)境

//首先安裝Homebrew 終端輸入這條命令
/usr/bin/ruby -e "$(curl -fsSl https://raw.githubusercontent.com/Homebrew/install/master/install)"
//安裝rvm
curl -Lget.rvm.io | bash -s stable
//裝載rvm
source ~/.rvm/scripts/rvm
//安裝2.3.0版本ruby
rvm install 2.3.0
//將2.3.0設(shè)為默認(rèn)
rvm use 2.3.0 --default

這樣就解決了上面的error

如果按照上面3個步驟沒問題齿梁,用命令pod --version 查看是否安裝成功,如果成功會顯示pod的版本肮蛹。

pod setup作用:將所有第三方的Podspec索引文件更新到本地的~/.cocoapods/repos
目錄下
pod安裝成功之后一個首先的操作就是執(zhí)行命令(不是必須的):
pod setup

所有的第三方開源庫的Podspec文件都托管在https://github.com/CocoaPods/Specs
我們需要把這個Podspec文件保存到本地勺择,這樣才能讓我們使用命令pod search 開源庫
搜索一個開源庫,怎樣才能把github上的Podspec文件保存本地呢伦忠?那就是 pod setup
執(zhí)行pod setup時省核,CocoaPods 會將第三方的podspec索引文件更新到本地的~/.cocoapods/repos
目錄下
如果沒有執(zhí)行過 pod setup,那用戶根目錄下~找不到.cocoapods/repos
目錄的昆码,沒有創(chuàng)建這個目錄气忠。

如果執(zhí)行 pod setup邻储,并且命令沒有執(zhí)行成功,那么會創(chuàng)建~/.cocoapods/repos
目錄旧噪,只不過目錄是空的吨娜。

如果執(zhí)行 pod setup,并且命令執(zhí)行成功舌菜,說明把github上的Podsepc文件更新到本地萌壳,那么會創(chuàng)建~/.cocoapods/repos
目錄亦镶,并且repos目錄
里有一個master目錄
日月,這個master目錄保存的就是github上所有第三方開源庫的Podspec索引文件。

但是第一次執(zhí)行pod setup時缤骨,這個github的Podspec索引文件比較大爱咬,有 300M 左右(以后會越來越大的),所以第一次更新時非常慢.要耐心等待......可以進(jìn)去目錄~/.cocoapods/repos
使用命令du -sh *
來查看下載文件的大小了
怎么才能快點呢绊起?網(wǎng)上好多給出都是更換索引庫的鏡像精拟,gitcafe和oschina, gitcafe已經(jīng)被coding收購了(2016年3月份左右收購)虱歪。這兩個我親測蜂绎,現(xiàn)在都不行了(可能是我網(wǎng)速不好,基本上就是連接失敗笋鄙,有空網(wǎng)速好點的時候我在測試一下)师枣。所以還是別更換 CocoaPods 索引庫的鏡像了。

QQ圖片20170111154337.png

由于網(wǎng)絡(luò)原因萧落,践美,有時候會出現(xiàn)連接超時,找岖,多試幾次 就會好了

如果一直卡在 Setting up CocoaPods master repo
可以進(jìn)去目錄~/.cocoapods/repos
使用命令du -sh 查看文件大小 如下圖所示 就耐心等待

QQ圖片20170111154559.png

你妹的 陨倡,最后竟然 940M 我都服了 但是repos 文件的大小是500多M 不管了 反正下載完事了

QQ圖片20170111160811.png

三. CocoaPods的使用

//cd進(jìn)入項目的根目錄

//會生成模板的Podfile文件
pod init

然后添加 例如下面的庫
pod 'AFNetworking'
pod 'JYCarousel', '0.0.1'
pod 'WCJCache', :git => "http://gitlab.9ijx.com/iOS/WCJCache.git"

最后 pod install 安裝

關(guān)于Podfile.lock
的文件
執(zhí)行pod install
之后,CocoaPods會生成一個名為Podfile.lock
的文件许布。并鎖定當(dāng)前各依賴庫的版本兴革,之后如果多次執(zhí)行pod install
或者團(tuán)隊中的其它人check下來這份包含Podfile.lock
文件的工程后再執(zhí)行pod install
命令時,獲取下來的Pods依賴庫的版本就和最開始用戶獲取到的版本一致蜜唾。如果沒有Podfile.lock
文件帖旨,執(zhí)行pod install
命令會獲取第三方庫的最新版本,這就有可能造成同一個團(tuán)隊使用的依賴庫版本不一致灵妨,這對團(tuán)隊協(xié)作的危害無疑是災(zāi)難性的解阅!在這種情況下,如果團(tuán)隊想使用當(dāng)前最新版本的依賴庫泌霍,有兩種方案可修改Podfile.lock
的紀(jì)錄:
更改Podfile
中各依賴庫的版本
執(zhí)行pod update
命令

鑒于Podfile.lock
文件對團(tuán)隊協(xié)作如此重要货抄,我們應(yīng)該將它添加到版本控制里述召。
點擊前往CocoaPods官網(wǎng)查看對Podfile.lock
的介紹。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末蟹地,一起剝皮案震驚了整個濱河市积暖,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌怪与,老刑警劉巖夺刑,帶你破解...
    沈念sama閱讀 217,734評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異分别,居然都是意外死亡遍愿,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評論 3 394
  • 文/潘曉璐 我一進(jìn)店門耘斩,熙熙樓的掌柜王于貴愁眉苦臉地迎上來沼填,“玉大人,你說我怎么就攤上這事括授∥塍希” “怎么了?”我有些...
    開封第一講書人閱讀 164,133評論 0 354
  • 文/不壞的土叔 我叫張陵荚虚,是天一觀的道長薛夜。 經(jīng)常有香客問我,道長版述,這世上最難降的妖魔是什么梯澜? 我笑而不...
    開封第一講書人閱讀 58,532評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮院水,結(jié)果婚禮上腊徙,老公的妹妹穿的比我還像新娘。我一直安慰自己檬某,他們只是感情好撬腾,可當(dāng)我...
    茶點故事閱讀 67,585評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著恢恼,像睡著了一般民傻。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上场斑,一...
    開封第一講書人閱讀 51,462評論 1 302
  • 那天漓踢,我揣著相機與錄音,去河邊找鬼漏隐。 笑死喧半,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的青责。 我是一名探鬼主播挺据,決...
    沈念sama閱讀 40,262評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼取具,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了扁耐?” 一聲冷哼從身側(cè)響起暇检,我...
    開封第一講書人閱讀 39,153評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎婉称,沒想到半個月后块仆,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,587評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡王暗,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,792評論 3 336
  • 正文 我和宋清朗相戀三年悔据,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片瘫筐。...
    茶點故事閱讀 39,919評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡蜜暑,死狀恐怖铐姚,靈堂內(nèi)的尸體忽然破棺而出策肝,到底是詐尸還是另有隱情,我是刑警寧澤隐绵,帶...
    沈念sama閱讀 35,635評論 5 345
  • 正文 年R本政府宣布之众,位于F島的核電站,受9級特大地震影響依许,放射性物質(zhì)發(fā)生泄漏棺禾。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,237評論 3 329
  • 文/蒙蒙 一峭跳、第九天 我趴在偏房一處隱蔽的房頂上張望膘婶。 院中可真熱鬧,春花似錦蛀醉、人聲如沸悬襟。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,855評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽脊岳。三九已至,卻和暖如春垛玻,著一層夾襖步出監(jiān)牢的瞬間割捅,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,983評論 1 269
  • 我被黑心中介騙來泰國打工帚桩, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留亿驾,地道東北人。 一個月前我還...
    沈念sama閱讀 48,048評論 3 370
  • 正文 我出身青樓账嚎,卻偏偏與公主長得像莫瞬,于是被迫代替她去往敵國和親参淹。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,864評論 2 354

推薦閱讀更多精彩內(nèi)容