一妹孙、前記
盡管公司里的項(xiàng)目沒有用到CocoaPods(綜合考慮的結(jié)果),但最近想看看特定版本的庫穆律,用下CocoaPods還是方便一點(diǎn)捉撮。一年沒用這個(gè)了,需要回顧一下峡钓,記下這篇齐鲤,以后要用可以來看。
二椒楣、安裝
1、可用的源
打開終端輸入:
gem sources
如果是:
https://rubygems.org/
這個(gè)被墻了牡肉,用不了捧灰。需要換一個(gè)源,先刪了沒用的
sudo gem sources --remove (錯(cuò)誤的源)
然后再添加正確的源:
sudo sources -a https://ruby.taobao.org/
2统锤、安裝CocoaPods
sudo gem install CocoaPods
這里需要等待安裝
安裝結(jié)束后毛俏,有提示,且
pod
輸入pod 加回車饲窿,會(huì)有幫助顯示煌寇,這表示安裝成功
如果顯示command not found 表示沒有安裝成功
3、使用CocoaPods
- 打開終端逾雄,輸入:cd (空格) (項(xiàng)目拖進(jìn)來)
- 輸入pod init (為了生成podFile阀溶,已經(jīng)有了就不用此步驟了)
- “#”是注釋作用
- platform :ios, ‘8.0’表示最低版本兼容8.0
- use_frameworks! 支持swift語言
- 配置寫法 pod ‘第三方方庫名稱’,這個(gè)配置 寫在 target 和 end 之間
4、更新
本來是使用命令
pod update
由于被墻鸦泳,需要使用下面這個(gè)命令更新
pod update --verbose --no-repo-update
三银锻、問題來了
1、歷史描述
CocoaPods是一個(gè)可以幫你集中管理第三方庫的開源項(xiàng)目,運(yùn)行在Ruby的環(huán)境下,基于GitHub托管優(yōu)勢(shì),你可以很方便的查閱目前依賴于CocoaPods的資源
2做鹰、gem老化問題击纬,可以試著升級(jí)gem
sudo gem update --system
3、使用CocoaPods鏡像索引
所有的項(xiàng)目的Podspec文件都托管在 https://github.com/CocoaPods/Specs 第一次執(zhí)行pod setup時(shí)钾麸,CocoaPods會(huì)將這些podspec索引文件更新到本地的 ~/.cocoapods/目錄下更振,這個(gè)索引文件比較大,有80M左右饭尝。所以第一次更新時(shí)非常慢肯腕。
有人在gitcafe和oschina上建立了CocoaPods索引庫的鏡像,因?yàn)間itcafe和oschina都是國內(nèi)的服務(wù)器芋肠,所以在執(zhí)行索引更新操作時(shí)乎芳,會(huì)快很多。如下操作可以將CocoaPods設(shè)置成使用gitcafe鏡像:
第一步:刪除master
pod repo remove master
第二步:將以上代碼中的 https://gitcafe.com/akuandev/Specs.git 替換成 http://git.oschina.net/akuandev/Specs.git 即可使用oschina上的鏡像帖池。
pod repo add master https://gitcafe.com/akuandev/Specs.git
第三步: 更新
4奈惑、鏡像不可用問題
因?yàn)橛腥苏f淘寶源不能用了,雖然我現(xiàn)在使用時(shí)還能用睡汹,為了以防萬一肴甸,還是要有解決方案
第一種安裝:git clone方法安裝cocoapods
在終端中,進(jìn)入該目錄
cd ~/.cocoapods/repos
若沒有以上目錄囚巴,執(zhí)行下面指令原在,出現(xiàn).cocoapods的目錄后可以ctrl+c終止安裝友扰。sudo gem install cocoapods是常規(guī)的安裝方法,不過現(xiàn)在只是用來建立一下.cocoapods目錄庶柿。手動(dòng)建立.cocoapods目錄應(yīng)該也是可以的村怪,不過沒試過。如果能進(jìn)入~/.cocoapods/repos的目錄就忽略下面一條指令浮庐。
sudo gem install cocoapods
克隆一個(gè)Specs庫甚负,在終端必須進(jìn)入到~/.cocoapods/repos的目錄才執(zhí)行以下命令。
git clone https://github.com/CocoaPods/Specs
完成后审残,執(zhí)行open .打開當(dāng)前目錄repos
open .
然后把Specs目錄改名為master即可梭域。(~/.cocoapods/repos的目錄層級(jí))
如果gitclone還慢的話,直接上 https://github.com/CocoaPods/Specs 點(diǎn)擊下載搅轿。根據(jù)上面的目錄結(jié)構(gòu)圖病涨,放對(duì)了就好。
安裝中可能遇到的問題:
運(yùn)行pod后顯示:"pod: command not found"的錯(cuò)誤璧坟。賦予/usr/local/bin給予執(zhí)行與讀取權(quán)限既穆,執(zhí)行以下命令。若不行執(zhí)行sudo chmod 777 /usr/local/bin/雀鹃。
sudo chmod 700 /usr/local/bin/
安裝cocoa pods后循衰,在終端執(zhí)行pod search第三方框架時(shí)出錯(cuò):[!] Unable to find a pod with name, author, summary, ordescriptionmatching AFNetworking
解決方案:執(zhí)行
rm ~/Library/Caches/CocoaPods/search_index.json
然后再執(zhí)行pod search第三方框架
pod search afnetworking
按q退出搜索。
第二種安裝:
添加新鏡像 https://gems.ruby-china.org
gem sources -a https://gems.ruby-china.org/
安裝:蘋果系統(tǒng)升級(jí) OS X EL Capitan 后改為
sudo gem install -n /usr/local/bin cocoapods
pod setup
更新gem
sudo gem update --system
新建文件 vim “Podfile” (終端vim文件 按 i 可編輯 褐澎,esc 退出編輯会钝,:wq 可保存退出)
vim Podfile
5、執(zhí)行pod install還是pod update都卡
原因在于當(dāng)執(zhí)行以上兩個(gè)命令的時(shí)候會(huì)升級(jí)CocoaPods的spec倉庫工三,加一個(gè)參數(shù)可以省略這一步迁酸,然后速度就會(huì)提升不少。加參數(shù)的命令如下:
pod install --verbose --no-repo-update
pod update --verbose --no-repo-update
6俭正、搜索第三方出現(xiàn)-bash: pod: command not found的錯(cuò)誤
解決方案:命令一:
sudo gem install -n /usr/local/bin cocoapods/
命令二:
sudo chmod +rx /usr/local/bin
7奸鬓、上述第4點(diǎn)第一種方案,完全沒有安裝過的用戶是沒有~/.cocoapods目錄的
可以采用第二種方案
四掸读、https://gems.ruby-china.org/ 訪問不了
使用sudo gem update --system更新時(shí)
錯(cuò)誤為:
Error fetching https://gems.ruby-china.org/: bad response Not Found 404 (https://gems.ruby-china.org/specs.4.8.gz)
https://gems.ruby-china.org/ 訪問不了
域名改為
所以替換 ruby-china 提供鏡像串远,正確的操作是:
$ sudo gem update --system
$ gem sources --remove https://rubygems.org/
$ gem sources --remove https://ruby.taobao.org/ //如果安裝了淘寶的鏡像
//等有反應(yīng)之后再敲入以下命令
gem sources -a https://gems.ruby-china.com/
為了驗(yàn)證你的Ruby鏡像是并且僅是ruby-china,可以用以下命令查看:
$ gem sources -l
*** CURRENT SOURCES ***