最新CocoaPods安裝與使用步驟詳解

一骄呼、 CocoaPods簡(jiǎn)介

1、CocoaPods 是 iOS 最常用的第三方類庫(kù)管理工具判没,可以解決庫(kù)與庫(kù)之間的依賴關(guān)系蜓萄,有名的開(kāi)源類庫(kù)都支持 CocoaPods。
2澄峰、使用CocoaPods可以很方便地查找使用新的第三方庫(kù)绕德,這些類庫(kù)是比較“標(biāo)準(zhǔn)的”,可以讓我們方便快捷找到真正好用的類庫(kù)摊阀。
3、CocoaPods 是用 ruby 實(shí)現(xiàn)的,要想使用它首先需要有 ruby 的環(huán)境胞此。幸運(yùn)的是macOS系統(tǒng)默認(rèn)已經(jīng)可以運(yùn)行 ruby 了臣咖。
但是有時(shí)候 ruby 版本過(guò)低是無(wú)法正常支持 CocoaPods 的使用,所以需要先安裝更新升級(jí) rvm 和 ruby漱牵。

二夺蛇、 CocoaPods安裝過(guò)程

寫在前面

1.安裝需要用到Ruby,雖然Mac自帶了Ruby酣胀,不過(guò)版本有點(diǎn)老了刁赦,最好選擇更新一下。
2.查看當(dāng)前Ruby版本,檢查本地Mac是否 已經(jīng)安裝了闻镶。rvm (ruby version manager)命令甚脉。

引入概念:

RVM:
全稱是 Ruby Version Manager ,是一款由 Wayne E. Seguin 開(kāi)發(fā)的一款命令行工具铆农。rvm 能夠讓你輕松的安裝牺氨、管理 ruby 生產(chǎn)力環(huán)境,諸如不同版本的解釋器和 gem墩剖。

1 .安裝并載入rvm環(huán)境

(1). 檢查本地是否已安裝rvm

打開(kāi)終端,輸入指令
$ rvm -v
1) 如果不存在爷绘,則會(huì)出現(xiàn)下面的情況:

2)如果存在书劝,則會(huì)打印rvm的版本信息:

如果不存在,先要進(jìn)行安裝一下揉阎;

( 2 ). 安裝rvm

1)安裝指令是
$ curl -L https://get.rvm.io | bash -s stable
按下回車即進(jìn)入下載安裝的狀態(tài)庄撮,期間會(huì)自動(dòng)通過(guò)homebrew安裝依賴包.(Homebrew 是一個(gè)軟件包管理器,用于在mac上安裝一些macos 上沒(méi)有的UNiX工具毙籽;類似于360軟件管理器洞斯。)
等待一段時(shí)間就可以安裝好Rvm。
2)載入RVM環(huán)境:
$ source ~/.rvm/scripts/rvm
3)檢查是否安裝成功:
$ rvm -v
下圖即為安裝成功后坑赡,顯示的版本號(hào)

(3)RVM命令安裝Ruby環(huán)境

1)查看當(dāng)前ruby版本
$ ruby -v(檢查當(dāng)前版本,當(dāng)ruby版本低于2.2.2時(shí)烙如,安裝cocoapods會(huì)報(bào)錯(cuò))

2)查看所有ruby版本
$ rvm list known 查詢當(dāng)前所有已知的ruby環(huán)境。

如果版本低于2.2.2毅否,請(qǐng)更新一下亚铁。vrm list known命令會(huì)查詢所有的ruby版本,找到最高版本號(hào)進(jìn)行安裝螟加;
若版本庫(kù)里沒(méi)有最新版本徘溢,輸入:
$ rvm get head 升級(jí)到最新的存儲(chǔ)庫(kù)源版本
3)安裝指定版本
輸入指令:
$ rvm install 2.5.1 (選擇較高版本)吞琐,
然后根據(jù)提示按“enter”鍵,第二次按之后會(huì)提示你輸入密碼然爆。
等待漫長(zhǎng)的下載站粟,編譯過(guò)程,完成以后曾雕,Ruby, Ruby Gems 就自動(dòng)安裝好了奴烙。

4)查看已經(jīng)安裝的ruby版本
 $ rvm list

卸載一個(gè)已安裝版本
$ rvm remove 2.5.1

2. 設(shè)置默認(rèn)Ruby版本

安裝好RVM之后可以指定特定Ruby版本為系統(tǒng)默認(rèn)版本
輸入命令:
$ rvm 2.5.01 - - default
也可以指定其他版本號(hào),前提是有用rvm install 安裝過(guò)那個(gè)版本

3. 檢查更新ruby版本環(huán)境

cocoapods是用gem ruby實(shí)現(xiàn)的剖张,想要使用它首先需要有g(shù)em ruby的環(huán)境切诀。且Mac的macos系統(tǒng)默認(rèn)已經(jīng)可以運(yùn)行ruby。
∩ε(建議gem bury包環(huán)境升級(jí)到2.6.x以上幅虑。)

(1).檢查gem ruby版本號(hào):

$ ruby -v
$ gem -v
得到如下結(jié)果:

Gem是管理Ruby庫(kù)和程序的標(biāo)準(zhǔn)包,如果它的版本過(guò)低也可能導(dǎo)致安裝失敗肯污,解決的辦法是更新gem版本

(2).更新gem ruby版本

$ gem update - -system 更新gem ruby版本號(hào):

4.檢查ruby源并移除翘单。

(1)、檢查ruby源

$ gem sources -l
檢查ruby源,結(jié)果如下:


因?yàn)镽uby環(huán)境默認(rèn)的的軟件源rubygems.org被屏蔽了蹦渣,國(guó)內(nèi)那面永遠(yuǎn)需要翻 越的墻哄芜,你懂的~,我們需要來(lái)修改更換源柬唯,把源切換至ruby-china认臊;

(2)、移除掉原有的源

$ gem sources - - remove https://rubygems.org/

(3)锄奢、添加國(guó)內(nèi)最新的源失晴。ruby-china

$ gem sources -a https://gems.ruby-china.com

這里注意一下https://gems.ruby-china.org 已經(jīng)不能使用。后綴要改成com

(4)拘央、檢查是否添加成功

$ gem sources -l


到這里就已經(jīng)把Ruby環(huán)境安裝成功涂屁!接下來(lái)需要對(duì)cocoapods進(jìn)行安裝。

5. 安裝CocoaPods

$ gem install -n /usr/local/bin cocoapods

6. 查看是否安裝成功并更新

(1)查看是否成功

$ pod - - version 查看pod版本

(2) 更新Podspec索引文件灰伟,創(chuàng)建本地索引庫(kù),如果沒(méi)有報(bào)錯(cuò)拆又,就說(shuō)明一切安裝成功了;這個(gè)過(guò)程需要一些時(shí)間栏账。

$ pod setup

三帖族、CocoaPods的使用

1、用Xcode創(chuàng)建(打開(kāi))一個(gè)工程挡爵,并創(chuàng)建podfile配置文件

(1)竖般、進(jìn)入項(xiàng)目目錄

$ cd ~

在沒(méi)有導(dǎo)入庫(kù)時(shí),項(xiàng)目中import庫(kù) 會(huì)報(bào)錯(cuò)


(2)茶鹃、創(chuàng)建Podfile文件

$ touch Podfile
創(chuàng)建一個(gè)podfile文件涣雕,然后打開(kāi)編輯;
或是使用$ vi podfile 輸入i進(jìn)入編輯艰亮,編輯完成后按 esc 然后輸入:wq 按回車鍵 ,保存并退出胞谭。

(3)垃杖、編輯Podfile文件。

我們可以在Podfile文件中寫入需要用到的第三方庫(kù)按如下格式:

platform :ios, '9.0'
use_frameworks!
target 'TestDemo' do
pod 'Alamofire', '~> 4.0.1'
pod 'Kingfisher', '~> 3.1.1'
end

Swift的pod文件在于use_frameworks! 這一句是必須的丈屹,作用是把三方庫(kù)打包成靜態(tài)庫(kù),而oc是不需要的伶棒。

另外旺垒,也可在github中找到所需要的庫(kù),里面有podfile格式內(nèi)容

2肤无、安裝依賴庫(kù)

$ pod install (后續(xù)添加框架可直接pod update)

標(biāo)準(zhǔn)是使用pod install或者pod update,但是這樣會(huì)反應(yīng)很慢
建議使用:

$ pod install --verbose --no-repo-update
$ pod update --verbose --no-repo-update

當(dāng)執(zhí)行標(biāo)準(zhǔn)命令的時(shí)候會(huì)升級(jí)CocoaPods的spec倉(cāng)庫(kù)先蒋,加一個(gè)參數(shù)可以省略這一步,然后速度就會(huì)提升不少宛渐。

若出現(xiàn)以下錯(cuò)誤時(shí)竞漾,在Podfile 文件中添加如下一行內(nèi)容:

xcodeproj ‘你的工程名.xcodeproj’

這是由于你多次移動(dòng)你項(xiàng)目的路徑,以至于再次update你的Podfile項(xiàng)目時(shí)窥翩,出現(xiàn)找不到工程路徑的問(wèn)題

3业岁、進(jìn)入項(xiàng)目時(shí),再次打開(kāi)寇蚊,編譯報(bào)錯(cuò)就消失了笔时。安裝完成!



CocoaPods工作原理

CocoaPods的工作主要是通過(guò)ProjectName.xcworkspace來(lái)組織的仗岸,在打開(kāi)ProjectName.xcworkspace文件后允耿,發(fā)現(xiàn)Xcode會(huì)多出一個(gè)Pods工程。它是將所有的依賴庫(kù)都放到名為Pods項(xiàng)目中扒怖,然后讓主項(xiàng)目依賴Pods項(xiàng)目较锡,就這樣,源碼管理工作都從主項(xiàng)目移到了Pods項(xiàng)目中盗痒。

完結(jié)B煸獭!积糯!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末放刨,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子绊率,更是在濱河造成了極大的恐慌鹏秋,老刑警劉巖,帶你破解...
    沈念sama閱讀 210,978評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件川慌,死亡現(xiàn)場(chǎng)離奇詭異吃嘿,居然都是意外死亡祠乃,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,954評(píng)論 2 384
  • 文/潘曉璐 我一進(jìn)店門兑燥,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)亮瓷,“玉大人,你說(shuō)我怎么就攤上這事降瞳≈鲋В” “怎么了?”我有些...
    開(kāi)封第一講書人閱讀 156,623評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵挣饥,是天一觀的道長(zhǎng)除师。 經(jīng)常有香客問(wèn)我,道長(zhǎng)扔枫,這世上最難降的妖魔是什么汛聚? 我笑而不...
    開(kāi)封第一講書人閱讀 56,324評(píng)論 1 282
  • 正文 為了忘掉前任,我火速辦了婚禮短荐,結(jié)果婚禮上倚舀,老公的妹妹穿的比我還像新娘。我一直安慰自己忍宋,他們只是感情好痕貌,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,390評(píng)論 5 384
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著讶踪,像睡著了一般芯侥。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上乳讥,一...
    開(kāi)封第一講書人閱讀 49,741評(píng)論 1 289
  • 那天柱查,我揣著相機(jī)與錄音,去河邊找鬼云石。 笑死唉工,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的汹忠。 我是一名探鬼主播淋硝,決...
    沈念sama閱讀 38,892評(píng)論 3 405
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼宽菜!你這毒婦竟也來(lái)了谣膳?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書人閱讀 37,655評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤铅乡,失蹤者是張志新(化名)和其女友劉穎继谚,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體阵幸,經(jīng)...
    沈念sama閱讀 44,104評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡花履,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,451評(píng)論 2 325
  • 正文 我和宋清朗相戀三年芽世,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片诡壁。...
    茶點(diǎn)故事閱讀 38,569評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡济瓢,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出妹卿,到底是詐尸還是另有隱情旺矾,我是刑警寧澤,帶...
    沈念sama閱讀 34,254評(píng)論 4 328
  • 正文 年R本政府宣布纽帖,位于F島的核電站宠漩,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏懊直。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,834評(píng)論 3 312
  • 文/蒙蒙 一火鼻、第九天 我趴在偏房一處隱蔽的房頂上張望室囊。 院中可真熱鬧,春花似錦魁索、人聲如沸融撞。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 30,725評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)尝偎。三九已至,卻和暖如春鹏控,著一層夾襖步出監(jiān)牢的瞬間致扯,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 31,950評(píng)論 1 264
  • 我被黑心中介騙來(lái)泰國(guó)打工当辐, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留抖僵,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,260評(píng)論 2 360
  • 正文 我出身青樓缘揪,卻偏偏與公主長(zhǎng)得像耍群,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子找筝,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,446評(píng)論 2 348

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

  • CocoaPods 是什么蹈垢? CocoaPods 是一個(gè)負(fù)責(zé)管理 iOS 項(xiàng)目中第三方開(kāi)源庫(kù)的工具。CocoaPo...
    朝洋閱讀 25,662評(píng)論 3 51
  • 第一次安裝CocoaPods也遇到了一些坑,但是 那個(gè)時(shí)候時(shí)間比較緊,沒(méi)有抽出時(shí)間整理,最近因?yàn)殡娔X還原從新做了系...
    幸福的尾巴__閱讀 8,281評(píng)論 7 9
  • 臘月二十七袖裕,晴 這幾天溫州天氣真好曹抬,中午打開(kāi)窗戶,坐在太陽(yáng)下陆赋,看看書沐祷,不要太愜意哦嚷闭! 不再以思念老公為主題的生活真...
    玲萍閱讀 103評(píng)論 0 0
  • 今天是一個(gè)很開(kāi)心的一天胞锰,今天是我的生日,我邀請(qǐng)朋友來(lái)參加我的生日兢榨,每個(gè)人嗅榕。都送了我一樣禮物,手表布娃娃吵聪,筆記本凌那,賀...
    四葉草的幸福_7bee閱讀 204評(píng)論 0 1
  • 今夜帽蝶,《中國(guó)詩(shī)詞大會(huì)》總決賽落下帷幕,此前因節(jié)目走紅的16歲 復(fù)旦附中女生武亦姝块攒,終不負(fù)眾望摘得桂冠励稳。 這檔堪稱綜...
    燚燚好運(yùn)祈福閱讀 1,059評(píng)論 9 19