2017 最新的 cocoaPods 安裝方法

通過努力終於發現了最新的 解決cocoaPods安裝的辦法:

taobao Gems 源已中止維護,現由 ruby-china 提供鏡像服務

第一步:安裝rvm,

無論需不須要升級ruby,rvm可讓你擁有多個版本的Ruby,而且能夠在多個版本之間自由切換。若是已經安裝過跳到第2步(rvm -v 查看是否安裝)html

$ curl -L get.rvm.io | bash -s stableios

//須要等一會git

$ source ~/.bashrcgithub

$ source ~/.bash_profilevim

等待終端加載完畢,後輸入xcode

rvm -vruby

 

若是能顯示版本好則安裝成功了。bash

第二步:安裝ruby

CocoaPods目前安裝須要Ruby的版本大於2.2.2,否則會報錯:Error installing pods: activesupport requires Ruby version >= 2.2.2。目前Mac系統默認自帶是2.0,因此須要升級。app

查看已安裝的ruby:
curl

rvm list

若是已安裝版本大於2.2.2,直接到第3步。

ruby -v  //也能夠查看ruby版本

//列出ruby可安裝的版本信息

rvm list known

rvm install 2.2.2  //安裝一個ruby版本

 

這裏必定要設置爲默認版本

rvm use 2.2.2 --default

 

第三步:更換源

咱們須要來修改更換源(因爲國內被牆)因此要把源切換至ruby-china在終端執行如下命令

目前網上文章大都是這面這種:

$ sudo gem update --system

$ gem sources --remove https://rubygems.org/

//等有反應以後再敲入如下命令

$ gem sources -a https://ruby.taobao.org/

這裏是個大坑:會報錯_connect returned=1 errno=0 state=SSLv3 read servercertificateB:certificate verify failed (https://ruby.taobao.org/specs.4.8.gz)

這是由於taobao Gems 源已中止維護,現由 ruby-china 提供鏡像服務,正確的操做是:

$ sudo gem update --system

$ gem sources --remove https://rubygems.org/

$ gem sources --remove https://ruby.taobao.org/       //若是安裝了淘寶的鏡像

//等有反應以後再敲入如下命令

gem sources -a https://gems.ruby-china.org/

爲了驗證你的Ruby鏡像是而且僅是ruby-china,能夠用如下命令查看:

$ gem sources -l

只有在終端中出現下面文字才代表你上面的命令是成功的:

*** CURRENT SOURCES ***

https://gems.ruby-china.org/

# 確保只有 gems.ruby-china.org

 

第四步:安裝CocoaPods

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

再加一句,完美解決

sudo xcode-select --switch/Applications/Xcode.app

在終端中輸入以下命令來完成安裝:

pod setup

它須要一點時間來完成,我反正是掛機等了一晚,你等就是了

若是安裝失敗 ~/.cocoapods 裏面是空的,就須要從新setup

命令以下:

pod repo remove master

pod setup

完畢以後這個文件夾大概有 100多M,須要花費比較多時間,請耐心等待。

到這裏你已經成功安裝了CocoaPods

終極辦法:把你已經裝好了cocoaPods同事~/.cocoapods目錄下的repo目錄拷貝下來,放進本身的目錄裏。再  pod setup

 

爲了肯定CocoaPods是否可使用,能夠用CocoaPods的搜索功能驗證一下。在終端中輸入:

$ pod search AFNetworking

過一段時間以後(可能會比較久),你會在終端中看到一些紅色的錯誤信息,以下:

Setting up CocoaPods master repo

[!] /usr/bin/Gitclone 'https://github.com/CocoaPods/Specs.git' master --depth=1

Cloning into 'master'...

error: RPC failed; result=52, HTTP code = 0

fatal: The remote end hung up unexpectedly

這說明CocoaPods還不能正常使用,須要更新pod,下載它的一些依賴包;在終端中輸入:

$ pod setup

過一段時間以後,你會在終端中看到跟上面一樣的紅色的錯誤信息。

敲入以上命令時,小編終端上是這個樣子的(因爲太長,僅截取前面一部分):

這說明某些環境緣由致使pod更新不了,可能緣由有,1)gem版本過低;2)github沒法連接;3).cocoapods目錄下的配置信息錯誤。咱們能夠一個一個來排除,

首先更新gem到最新版本,在終端中輸入:

$ sudo gem update --system

而後檢查是否能夠ping通github,在終端中輸入:

$ ping github.com

而後查看pob repo list:

$ pod repo list

結果顯示0 repos,說明沒有安裝成功;

刪除.cocoapods目錄,從新下載pod更新:

$ cd ~/.cocoapods/

$ sudo -rm -rf ~/.cocoapods/

從新執行pod setup,過一段時間後提示setup completed,在終端中輸入 pod list,展現出安裝列表;

敲入以上命令時,小編終端上是這個樣子的(因爲太長,僅截取前面一部分):

錯誤代理

[!] /usr/bin/git clone https://github.com/CocoaPods/Specs.git master --depth=1

Cloning into 'master'...

fatal: unable to access 'https://github.com/CocoaPods/Specs.git/': Failed to connect to proxy.com port 1234: Operation timed out

很明顯啊,應爲很差,這歌意思是:代理出現了問題,致使clone不下來,研究了好長時間,因而有一下兩種辦法1》修改代理如:git config --global http.proxy   192.168.1.1:8081(這個代理時瞎寫的)2》

git config --global http.proxy 查詢到當前設置了代理,因此取消這個設置: 

git config --global --unset http.proxy
再查詢,已經沒有了代理,  後成功安裝。

 

看到這裏,你內心會不會說,我靠!太爽了,終於下載而且安裝好了!接下來看下如何使用吧。。

咱們先建立這個神奇的PodFile。在終端中進入(cd命令)你項目所在目錄,而後在當前目錄下,利用vim建立Podfile,運行:

$ vim Podfile

而後在Podfile文件中輸入如下文字:

須要注意的是podfile裏面輸入的格式變了。

platform :ios, '8.0'

target '你的項目名稱' do

pod 'AFNetworking', '~> 3.1.0'

end

而後保存退出。vim環境下,保存退出命令是:

:wq

這時候,你會發現你的項目目錄中,出現一個名字爲Podfile的文件,並且文件內容就是你剛剛輸入的內容。注意,Podfile文件應該和你的工程文件.xcodeproj在同一個目錄下。

這時候,你就能夠利用CocoPods下載AFNetworking類庫了。仍是在終端中的當前項目目錄下,運行如下命令:

$ pod install

 

最近使用CocoaPods來添加第三方類庫,不管是執行pod install仍是pod update都卡在了Analyzing dependencies不動

緣由在於當執行以上兩個命令的時候會升級CocoaPods的spec倉庫,加一個參數能夠省略這一步,而後速度就會提高很多。加參數的命令以下:

$ pod install --verbose --no-repo-update 
$ pod update --verbose --no-repo-update

 

注意最後一句話,意思是:之後打開項目就用 CocoaPodsDemo.xcworkspace 打開,而不是以前的.xcodeproj文件。不然沒法關聯pod下來的類庫。

原文鏈接:https://zuo11.com/Notes.woe?action=detail&note_id=70

     http://blog.cocoachina.com/article/29127

相關文章
相關標籤/搜索