cocoapods安裝和使用

2018.8.28https://gems.ruby-china.org域名更新為https://gems.ruby-china.com

2017.12.1 更新ruby源

最近安裝CocoaPods遇到了很多的問題歹啼,導(dǎo)致安裝了3天才完成晋涣,對(duì)!你沒有看錯(cuò)算吩,安裝了整整3天(當(dāng)中也有網(wǎng)絡(luò)的問題)。所以有了這篇文章偎巢。

當(dāng)前電腦版本: macOS High Sierra 10.13.1

xcode版本: Version 9.1 (9B55)

一兼耀、CocoaPods簡介

CocoaPods負(fù)責(zé)管理iOS項(xiàng)目中第三方框架。CocoaPods的項(xiàng)目源碼在Github上管理翠订。項(xiàng)目從2011年8月12日開始,CocoaPods的出現(xiàn)使得我們可以節(jié)省設(shè)置和更新第三方開源庫的時(shí)間遵倦。

二、開始安裝

安裝需要用到Ruby梧躺,雖然Mac自帶了Ruby,不過版本有點(diǎn)老了掠哥,最好更新一下

sudo gem update --system

接下來輸入系統(tǒng)密碼就可以安裝了巩踏,輸入密碼時(shí)不會(huì)顯示的,輸完回車就行了(黑色塊是我個(gè)人加上去的续搀,遮擋用戶名的)

輸入密碼

因?yàn)镽uby的軟件源rubygems.org被屏蔽了塞琼,所以要更換源

gem sources --addhttps://gems.ruby-china.com/--removehttps://rubygems.org/

添加源成功

接下來查看下源路徑是否更換了

gem sources -l

和上圖一樣的源就成功了

**請(qǐng)確保只有 gems.ruby-china.com **

然后就可以更新Ruby了

接下來安裝Cocoapods了

sudo gem install cocoapods

不過有可能出錯(cuò)(我就是出錯(cuò)了),出錯(cuò)的話執(zhí)行下面的命令

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

install出錯(cuò)

安裝時(shí)會(huì)輸出很多文件以及進(jìn)度條

install成功

安裝完后你可以輸入下面的命令查看是否成功禁舷,當(dāng)前CocoaPods版本為1.0.0

pod --version

查看是否安裝成功

安裝完cocoapods后進(jìn)行最蛋疼的一步彪杉,設(shè)置倉庫,就是把所有上傳到cocoapods的第三方框架下載每個(gè)版本和網(wǎng)絡(luò)地址以及一些其他描述信息到本地牵咙,因?yàn)榉?wù)器在國外所以比較蛋疼派近,網(wǎng)速好的直接無視我的話輸完下面命令后跳到下載中說明-。-

倉庫里裝的東西

pod setup

等待下載完

下載完成圖

下載完就大功告成了(沒有網(wǎng)絡(luò)問題就可以跳轉(zhuǎn)到三洁桌、開始使用了).

**網(wǎng)速不好渴丸,老是報(bào)錯(cuò)的這里!

之前我也嘗試過使用CocoaPods的鏡像索引使用國內(nèi)的鏡像,但是沒有效果谱轨,oschina的應(yīng)該是因?yàn)槿肆髁吭L問大戒幔,所以設(shè)置了驗(yàn)證碼,而gitcafe馬上要停止服務(wù)了土童,所以沒辦法了(如果你知道還有其他鏡像請(qǐng)聯(lián)系我溪食,貢獻(xiàn)出來讓我們這些網(wǎng)速差的小白能愉快的安裝)

一直報(bào)錯(cuò),503娜扇、argumenterror , syntax error on line 4, col 0: `min:0.29.0` 等等错沃,都是你的網(wǎng)絡(luò)原因?qū)е碌?/p>

這就要手動(dòng)下載配置,可以在上面的oschina和gitcafe鏈接中下載雀瓢,也可以在github上下載(不過比較慢)

更新一個(gè)手動(dòng)下載到本地的方法!!!

采用國內(nèi)的免費(fèi)服務(wù)器同步后下載:鏈接

下載完成后你可以輸入

pod setup

然后control+c 中斷枢析,目的是讓他幫你創(chuàng)建文件夾

當(dāng)然你也可以手動(dòng)創(chuàng)建文件夾,但是文件夾是隱藏的所以你需要在Finder頁面使用快捷鍵command + shift + .

隨后在Finder點(diǎn)擊 前往>前往文件夾 中前往文件刃麸,輸入下面指令

~/.cocoapods

前往文件也可以按快捷鍵shift+command+G

文件結(jié)構(gòu)

對(duì)比一下可以發(fā)現(xiàn)我們下載的文件和安裝后的文件只是改了一下文件名泊业,把最外面的文件改為master吁伺,然后扔到~/.cocoapods/repos文件夾下就完成設(shè)置了

對(duì)比圖

下載中說明

下載中如果不放心篮奄,可以新建一個(gè)終端窗口分別輸入下面兩條命令查看下載了多少窟却,下載完成的文件大小如下(2016.5.25日下載的文件)

cd ~/.cocoapods

du -sh *

完成后的文件大小

三夸赫、開始使用

設(shè)置完成后就可以開始使用了茬腿,先創(chuàng)建一個(gè)Project,然后創(chuàng)建一個(gè)single View Application到桌面控妻,終端中輸入cd+空格弓候,把剛剛創(chuàng)建到桌面的文件夾拖到終端中,回車

接下來創(chuàng)建Podfile文件夸研,并編輯

vim Podfile

進(jìn)入Podfile后輸入i編輯狀態(tài)(可以查看左下角有個(gè)INSERT)亥至,進(jìn)入輸入下面命令

platform:ios,'9.3'use_frameworks!target'Test'dopod'SDWebImage','~>3.7.6'pod'Masonry','~>1.0.0'end

<a name="Podfile" id="Podfile">Podfile格式解析</a>

platform是平臺(tái)

ios, '9.3'是指定所支持系統(tǒng)和最低版本

Test填寫你的target名稱(target名見下圖),pod 后面的就是你需要的框架,'~>里面就是版本',官網(wǎng)的案例是寫了版本號(hào)的姐扮。

這些就是Target名

官網(wǎng)案例

寫完后按Esc 然后:wq 意思是保存并退出

編寫并保存退出

接著輸入茶敏,就會(huì)把Podfile文件里寫的文件下載到當(dāng)前文件夾惊搏,并且創(chuàng)建.xcworkspace

pod install

安裝完成時(shí)的文件

接下來就可以打開Test(target名).xcworkspace文件導(dǎo)入頭文件編寫你的程序了恬惯。

四酪耳、編寫小問題

我在編寫時(shí)還出現(xiàn)了一點(diǎn)小問題葡兑,當(dāng)你導(dǎo)入頭文件時(shí)赞草,有時(shí)不會(huì)提示厨疙,不會(huì)提示就表示可能會(huì)打錯(cuò)沾凄,你可以control+B編譯一下再嘗試知允,如果還是不行就按照下面的圖進(jìn)行一下配置

$(PODS_ROOT)

選擇recursive

導(dǎo)入頭文件提示

之后我去看了下官網(wǎng)温鸽,官網(wǎng)的導(dǎo)入方式是尖括號(hào)<里面寫導(dǎo)入第三方的文件夾名+頭文件>

官網(wǎng)寫法

這里,又一個(gè)問題來了竟终,當(dāng)你使用Masonry的時(shí)候需要進(jìn)行宏定義统捶,因?yàn)槭裁磿r(shí)候用mas_柄粹,什么時(shí)候包裝數(shù)據(jù)類型驻右,這些實(shí)在懶得記...而當(dāng)你用官網(wǎng)的方式導(dǎo)入,那種方式不能支持宏

編譯時(shí)

運(yùn)行時(shí)報(bào)錯(cuò)

這時(shí)候就需要改成import "Masonry.h" ,很奇怪的是我現(xiàn)在導(dǎo)入有提示,而之前導(dǎo)入一直沒出提示茵瘾。

正確的導(dǎo)入文件方法

五圣絮、常見的問題

### ErrorArgumentError - invalid byte sequenceinUS-ASCII/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.31.1/lib/cocoapods/installer/pod_source_installer.rb:257:in`glob'

/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.31.1/lib/cocoapods/installer/pod_source_installer.rb:257:in `glob'/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.31.1/lib/cocoapods/installer/pod_source_installer.rb:257:in`clean_paths'

/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.31.1/lib/cocoapods/installer/pod_source_installer.rb:157:in `clean_installation'/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.31.1/lib/cocoapods/installer/pod_source_installer.rb:82:in`clean!'

/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.31.1/lib/cocoapods/installer.rb:278:in `block in clean_pod_sources'/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.31.1/lib/cocoapods/installer.rb:277:in`each'

/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.31.1/lib/cocoapods/installer.rb:277:in `clean_pod_sources'/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.31.1/lib/cocoapods/installer.rb:107:in`blockindownload_dependencies'

/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.31.1/lib/cocoapods/user_interface.rb:52:in `section'/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.31.1/lib/cocoapods/installer.rb:103:in`download_dependencies'

/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.31.1/lib/cocoapods/installer.rb:89:in `install!'/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.31.1/lib/cocoapods/command/project.rb:38:in`run_install_with_update'

/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.31.1/lib/cocoapods/command/project.rb:68:in `run'/Library/Ruby/Gems/2.0.0/gems/claide-0.5.0/lib/claide/command.rb:277:in`run'

/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.31.1/lib/cocoapods/command.rb:51:in `run'/Library/Ruby/Gems/2.0.0/gems/cocoapods-0.31.1/bin/pod:33:in`'

/usr/bin/pod:23:in `load'/usr/bin/pod:23:in`'

更改編碼為UTF-8

export LANG=en_US.UTF-8

export LANGUAGE=en_US.UTF-8

export LC_ALL=en_US.UTF-8

[!] Your Podfile has had smart quotes sanitised. To avoid issuesinthe future, you shouldnotuse TextEditforediting it.If you arenotusing TextEdit, you should turn off smart quotesinyour editor of choice.

提示你使用mac自帶的"文本編輯"要取消智能引號(hào)

編輯-替換-智能引號(hào) 取消勾選

關(guān)閉智能引號(hào)

不過我建議最好是用vim,如果嫌麻煩還可以用xcode打開

打開方式

始終以Xcode打開

剩下有些編寫時(shí)出錯(cuò)的問題可能是多了個(gè)空格或者什么字符打錯(cuò)了/使用了中文字符等棒搜,看編譯器報(bào)的錯(cuò)一般就能解決

如果不能解決就試試從執(zhí)行安裝命令力麸,依次執(zhí)行之前的命令

sudo gem install cocoapods

上面報(bào)錯(cuò)就執(zhí)行sudo gem install -n /usr/local/bin cocoapods

pod setup

常用命令

更新本地倉庫

pod repo update

從本地已有倉庫更新當(dāng)前項(xiàng)目中的第三方(不更新本地倉庫)

pod update --verbose --no-repo-update

可能寫的有點(diǎn)啰嗦了克蚂,最初我想的就是給超小白寫的筋讨,我個(gè)人比較喜歡看圖,所以基本上保持每幾個(gè)動(dòng)作截取一張圖赤屋,看的更直觀,但是有些圖在最初安裝的時(shí)候沒想到要寫文章所以就沒有截取到谜慌,非承婪叮可惜令哟,細(xì)心的朋友會(huì)發(fā)現(xiàn)我的終端樣式不一樣,是在后面幫朋友安裝時(shí)重新截的圖晴竞,如果對(duì)你有幫助噩死,那就再好不過了已维!

作者:BIMiracle

鏈接:http://www.reibang.com/p/1bb0ad42cb2e

來源:簡書

簡書著作權(quán)歸作者所有已日,任何形式的轉(zhuǎn)載都請(qǐng)聯(lián)系作者獲得授權(quán)并注明出處飘千。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末护奈,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子酌予,更是在濱河造成了極大的恐慌,老刑警劉巖松靡,帶你破解...
    沈念sama閱讀 211,376評(píng)論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件雕欺,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡啦逆,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,126評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來沟蔑,“玉大人,你說我怎么就攤上這事厅须±屎停” “怎么了簿晓?”我有些...
    開封第一講書人閱讀 156,966評(píng)論 0 347
  • 文/不壞的土叔 我叫張陵镀层,是天一觀的道長皿曲。 經(jīng)常有香客問我,道長坞古,這世上最難降的妖魔是什么痪枫? 我笑而不...
    開封第一講書人閱讀 56,432評(píng)論 1 283
  • 正文 為了忘掉前任奶陈,我火速辦了婚禮附较,結(jié)果婚禮上拒课,老公的妹妹穿的比我還像新娘事示。我一直安慰自己肖爵,他們只是感情好劝堪,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,519評(píng)論 6 385
  • 文/花漫 我一把揭開白布幅聘。 她就那樣靜靜地躺著窃植,像睡著了一般。 火紅的嫁衣襯著肌膚如雪葛超。 梳的紋絲不亂的頭發(fā)上绣张,一...
    開封第一講書人閱讀 49,792評(píng)論 1 290
  • 那天侥涵,我揣著相機(jī)與錄音宋雏,去河邊找鬼磨总。 笑死,一個(gè)胖子當(dāng)著我的面吹牛娶牌,可吹牛的內(nèi)容都是我干的馆纳。 我是一名探鬼主播厕诡,決...
    沈念sama閱讀 38,933評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼灵嫌,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了猖凛?” 一聲冷哼從身側(cè)響起辨泳,我...
    開封第一講書人閱讀 37,701評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤菠红,失蹤者是張志新(化名)和其女友劉穎难菌,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體遇绞,經(jīng)...
    沈念sama閱讀 44,143評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡摹闽,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,488評(píng)論 2 327
  • 正文 我和宋清朗相戀三年付鹿,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了舵匾。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片纽匙。...
    茶點(diǎn)故事閱讀 38,626評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡烛缔,死狀恐怖轩拨,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情晕翠,我是刑警寧澤,帶...
    沈念sama閱讀 34,292評(píng)論 4 329
  • 正文 年R本政府宣布硫麻,位于F島的核電站拿愧,受9級(jí)特大地震影響碌尔,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜柳洋,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,896評(píng)論 3 313
  • 文/蒙蒙 一熊镣、第九天 我趴在偏房一處隱蔽的房頂上張望立由。 院中可真熱鬧,春花似錦毕箍、人聲如沸道盏。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,742評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽涩澡。三九已至坠敷,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間粥帚,已是汗流浹背限次。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評(píng)論 1 265
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留赠群,地道東北人依啰。 一個(gè)月前我還...
    沈念sama閱讀 46,324評(píng)論 2 360
  • 正文 我出身青樓速警,卻偏偏與公主長得像鸯两,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子忙灼,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,494評(píng)論 2 348

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