CocoaPods是什麼?
CocoaPods是一個負責管理iOS項目中第三方開源庫的工具。CocoaPods的項目源碼在Github上管理。該項目開始於2011年8月12日,在這兩年多的時間裡,它持續保持活躍更新。開發iOS項目不可避免地要使用第三方開源庫,CocoaPods的出現使得我們可以節省設置和更新第三方開源庫的時間,在iOS開發中經常會用到第三方庫如AFNetworking,ASIHttpRequest等,在使用第三方庫時,你除了要導數源碼外,但是,集成這些依賴庫需要我們手動去配置,還有當這些第三方庫發生了更新,還需要手動去更新項目。這就顯得非常麻煩。有麻煩自然有解決辦法,CocoaPods就是為了解決這個問題而生的。通過CocoaPods,我們可以將第三方的依賴庫統一管理起來,配置和更新只需要通過簡單的幾行命令即可完成。
最近安裝CocoaPods,在網上找了一下資料,發現文章要麼過時,要麼各種報錯。都是抄來抄去,沒有靠譜的,特意整理了一下最新的教程,並親測成功。taobao Gems 源已停止維護,現由 ruby-china 提供鏡像服務
第一步:安裝rvm,
不管需不需要升級ruby,rvm可以讓你擁有多個版本的Ruby,並且可以在多個版本之間自由切換。如果已經安裝過跳到第2步(rvm -v 查看是否安裝)
$ curl -L get.rvm.io | bash -s stable //需要等一會 $ source ~/.bashrc $ source ~/.bash_profile
等待終端加載完畢,後輸入
rvm -v
如果能顯示版本好則安裝成功了。
第二步:安裝ruby
CocoaPods目前安裝需要Ruby的版本大於2.2.2,不然會報錯:Error installing pods: activesupport requires Ruby version >= 2.2.2。目前Mac系統默認自帶是2.0,所以需要升級。
查看已安裝的ruby:
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的搜索功能驗證一下。在終端中輸入:
$ 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,展示出安裝列表;
敲入以上命令時,小編終端上是這個樣子的(由於太長,僅截取前面一部分):
看到這裡,你心裡會不會說,我靠!太爽了,終於下載並且安裝好了!接下來看下如何使用吧。。
我們先創建這個神奇的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
注意最後一句話,意思是:以後打開項目就用 CocoaPodsDemo.xcworkspace 打開,而不是之前的.xcodeproj文件。否則無法關聯pod下來的類庫。
以上所述是小編給大家介紹的2016最新CocoaPods安裝和錯誤解決方案,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對本站網站的支持!