CocoaPods基于Ruby語言開發(fā)而成,因此安裝CocoaPods前需要安裝Ruby環(huán)境。幸運的是Mac系統(tǒng)默認自帶Ruby環(huán)境,如果沒有請自行查找安裝。檢測是否安裝Ruby:
在終端輸入:gem -v 就會出現(xiàn)Ruby版本號
在進行CococaPods安裝的時候,遇到錯誤,錯誤提示大致意思是ruby版本太低,需要升級至2.2.2以上.果然,在終端使用ruby -v查看版本為2.0,這時我來升級ruby。
使用RVM也就是Ruby Version Manager,Ruby版本管理器來升級ruby,RVM包含了Ruby的版本管理和Gem庫管理(gemset)。
1、 RVM安裝
$ curl -L get.rvm.io | bash -s stable
2、 之后就是等待一段時間之后,就可以安裝成功了
$ source ~/.bashrc
$ source ~/.bash_profile
3、 測試是否安裝正常
$ rvm -v
如果出現(xiàn)rvm(版本號)就算是安裝RVM成功了。
二、使用RVM升級Ruby
2、列出已知ruby的版本
$ rvm list known
3、安裝ruby 2.2.4
$ rvm install 2.2.4
4、安裝完之后,可以ruby -v 測試一下,看看版本有沒有變化PS:首先說明一下,在這一步,需要按回車鍵,連續(xù)按幾次,當(dāng)然如果你沒裝xcode,需要先去裝xcode,不然會報錯接下來就是按常規(guī)的方法安裝CocoaPods了!
5.切換 Ruby 版本
如果想設(shè)置為默認版本,這樣一來以后新打開的控制臺默認的 Ruby 就是這個版本
$ rvm use 2.2.4 --default
查詢已經(jīng)安裝的ruby$ rvm list
卸載一個已安裝版本$ rvm remove 1.8.7
RubyGems 鏡像的管理工作以后將交由 Ruby China 負責(zé),以便能有更多的社區(qū)愛好者參與進來,保持持續(xù)發(fā)展。
請盡可能用比較新的 RubyGems 版本,建議 2.6.x 以上。
$ sudo gem update --system # 這里請翻墻一下
$ gem -v
$ gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/
$ gem sources -l
https://gems.ruby-china.com
# 確保只有 gems.ruby-china.com
4.安裝CocoaPods,在終端輸入指令:
sudo gem install -n /usr/local/bin cocoapods
如果安裝了多個Xcode使用下面的命令選擇
sudo xcode-select --switch /Applications/Xcode.app
稍等片刻即可安裝完成,輸入以下命令檢測是否安裝成功:pod --version
成功則會提示CocoaPods版本,這已經(jīng)安裝完,但是別高興太早。
5.接著在終端輸入:pod setup
這里下載很慢的,取決于網(wǎng)速,還會經(jīng)常斷開連接,我下載了很久幾個小時吧,建議等待直到下載完畢。
所有的項目的 Podspec 文件都托管在https://github.com/CocoaPods/Specs,pod setup在執(zhí)行時,會輸出Setting up CocoaPods master repo,但是會等待比較久的時間。這步其實是 Cocoapods 在將它的信息下載到 ~/.cocoapods目錄下,如果你等太久,輸入ls -a可看到隱藏的pod文件夾,輸入cd .cocoapods進入pod文件夾,然后輸入du -sh即可看到repos文件夾的容量,隔幾秒執(zhí)行一下該命令,可看到repos的容量在不斷增大,待容量增大至500+M時,說明,repos文件夾索引目錄已安裝完畢。此時,pod功能即可正常使用,完全退出終端,重啟終端,pod功能即可正常使用,期間如斷開連接就繼續(xù)pod setup。
pod repo update
pod install --no-repo-update
pod update --no-repo-update
6.關(guān)于 Podfile.lock
當(dāng)你執(zhí)行pod install之后,除了 Podfile 外,CocoaPods 還會生成一個名為Podfile.lock的文件,Podfile.lock 應(yīng)該加入到版本控制里面,不應(yīng)該把這個文件加入到.gitignore中。因為Podfile.lock會鎖定當(dāng)前各依賴庫的版本,之后如果多次執(zhí)行pod install 不會更改版本,要pod update才會改Podfile.lock了。這樣多人協(xié)作的時候,可以防止第三方庫升級時造成大家各自的第三方庫版本不一致。
8.常見問題
在終端輸入以下命令:pod repo list
結(jié)果為0 repos時說明安裝不成功
導(dǎo)入Swift語言編寫的類庫時需要加use_frameworks!,下面以導(dǎo)入Alamofire為例:
更新
pod repo update
or with pod install --repo-update
.
參考:http://blog.devtang.com/2014/05/25/use-cocoapod-to-manage-ios-lib-dependency/#jtss-douban