現(xiàn)象:
最近在項(xiàng)目,由于打包的時(shí)候報(bào)警,與其他同事電腦保持cocoapods版本號一致(想要更新到最新的1.3.1,目前1.2.0),于是在終端開始執(zhí)行一下命令:
sudo gem install cocoapods
pod --version

過程看著都很正常,但是在敲一下命令看版本,發(fā)現(xiàn)還是原先1.2.0版本。瞬間傻了眼,不起作用~
在終端里面繼續(xù)敲
which pod
查看一下當(dāng)前pod的路徑,竟然發(fā)現(xiàn)剛剛安裝pod的路徑和pod運(yùn)行的路徑不一樣:


兩個(gè)文件夾下面都有pod(上圖是被我刪掉pod之后的截圖),所以理所當(dāng)然的想把剛剛更新的pod復(fù)制一份到which pod指定的目錄下,結(jié)果發(fā)現(xiàn)也是不起作用。
后續(xù)我一次又一次的指定pod的安裝目錄,安裝,卸載pod都不管用,安裝完版本號始終為1.2.0(┑( ̄Д  ̄)┍)。
解決方案:
無奈,只好另尋他法,既然我無法指定,那能否直接全部刪除呢,全部重來?
后面嘗試著在終端敲移除命令
sudo gem uninstall cocoapods
這個(gè)時(shí)候居然發(fā)現(xiàn)我電腦里面有好幾個(gè)版本的cocoapods,看到第6個(gè)選項(xiàng)全部版本,果斷選了6。

完畢之后這個(gè)時(shí)候我電腦的就沒有任何cocoapods版本了(很棒棒)。
然后重新執(zhí)行安裝命令,終于可以了。pod安裝的目錄,和現(xiàn)執(zhí)行的pod路徑為同一個(gè)了。

原因&總結(jié):
為何會(huì)出現(xiàn)不同的路徑?cocoapods是用的ruby語言寫的一個(gè)工具。MacOS當(dāng)中本身就集成了Ruby,所以路徑不一樣的原因,是因?yàn)殡娔X里面有一個(gè)自帶的Ruby路徑,還有一個(gè)就是通過Rvm管理的Ruby??梢栽谠诮K端里面輸入which ruby來查看使用的是什么ruby。
那么如何切換ruby呢?
rvm use system # 使用系統(tǒng) ruby
rvm use 2.3 # 使用 rvm ruby
在切換 ruby 版本之后,gem 也會(huì)跟著切換,我們就可以安裝兩個(gè)版本的 CocoaPods 了。