? ? ? 今天使用cocopod安裝高德地圖SDK時發(fā)現(xiàn)提示版本較低,去終端里面,pod --version ,顯示版本是0.39.0,而安裝高德地圖SDK需要1.0.0及以上。雖然不用cocopod直接拖進(jìn)去也可以,但是趁著有時間還是打算處理一下,以備不時之需。然后筆者就只能乖乖去升級,想著就升級一下也不是什么麻煩的事,但是還是出現(xiàn)了一些坑,解決一個出現(xiàn)另一個。
下面是筆者的升級過程:
sudo gem update -- system // 先更新gem
gem sources --remove https://rubygems.org/ ? //移除
gem sources -a https://ruby.taobao.org/ ? ? //添加
gem sources -l ? ?//查看一下改成功沒有
\*\*\* CURRENT SOURCES \*\*\*
https://ruby.taobao.org/
//這樣就是成功了,下面的網(wǎng)址對應(yīng)你設(shè)置的網(wǎng)址,下面開始更新cocopod 一切看著是那么順利 so ?easy
sudo gem install cocoapods ? //安裝
但是這個時候開始出現(xiàn)了問題:
第一個坑:
? ? ? ? 記得是說證書無效的錯誤,不過這個錯誤信息不重要了,原因和明顯 ,現(xiàn)在不能用https://ruby.taobao.org/了,已經(jīng)放棄維護(hù)了,現(xiàn)在改用https://gems.ruby-china.org/
下面是相關(guān)資料的鏈接:http://ruby-china.org/topics/29250 ?
只需要重復(fù)上面的步驟 移除淘寶 改成這個https://gems.ruby-china.org/就行了。
記住,在?gem sources -l?的時候 如果發(fā)現(xiàn)下面顯示兩個網(wǎng)址,是不行的,要保證只有https://gems.ruby-china.org/這一個。
第二個坑:
正確改成https://gems.ruby-china.org/之后,筆者又開始執(zhí)行更新命令,這時又報錯:
Unable to resolve dependencies ?(無法解析依賴關(guān)系)
這時就要更新下依賴關(guān)系了。
執(zhí)行命令:sudo gem update --system ?下面是終端打印結(jié)果,示例:
Updating rubygems-update
Fetching: rubygems-update-2.4.6.gem (100%)
Successfully installed rubygems-update-2.4.6
...
最后會出現(xiàn) RubyGems system software updated ? 就代表成功了。
第三個坑:
依賴關(guān)系也更新成功了,開始更新發(fā)現(xiàn)還是報錯(有時會出現(xiàn)更新一半時報錯):
While executing gem ... (Errno::EPERM)
Operation not permitted - /usr/bin/xcodeproj
此時不要用 sudo gem installcocoa pods
要用? sudo gem install -n /usr/local/bin cocoapods --pre ?就OK了。
注:
如果上面的操作無誤,有時還會出現(xiàn):hostname "upyun.gems.ruby-china.org" does not match the server certificate 的錯誤 ,不用擔(dān)心 ,這是網(wǎng)絡(luò)鏈接的問題 再次執(zhí)行命令多試幾下就好了。
以上就是這次更新筆者遇到的一些坑,具體的解決辦法也是到處谷歌,看到類似的就嘗試一下,尋求最終的解決辦法。這篇文章不算原創(chuàng),算是站在前人的肩膀上,把遇到的問題的解決方案總結(jié)一下吧,希望能對你有所幫助。