Cocoapods 安裝和使用

本文寫於2016年9月,安裝Cocoapods 用於iOS開發,可直接用Mac上的終端從GitHub上將第三方框架應用到工程中,接下來的安裝配置基於上一篇文章《在Mac OS X上安裝 Ruby運行環境》所配置的系統環境。git


Cocoapods的安裝

1.升級Ruby環境

若是Ruby沒有安裝,請參考 《在Mac OS X上安裝 Ruby運行環境》。
gem是一種文件組織的包,基於ruby開發,通常的ruby的不少插件都由各類包提供。github

注:如下代碼區域,帶有 $ 打頭的表示須要在控制檯(終端)下面執行(不包括 $ 符號),下一行爲結果,不需碼入。swift

$ sudo gem -v
$ sudo gem update --system

2.安裝Cocoapods時咱們要訪問cocoapods.org,用Ruby China的RubyGems鏡像來代替,執行如下命令:

12月20日更新:RubyGems 鏡像的管理工做已由淘寶轉交 Ruby China 負責,https://ruby.taobao.org/ 更改成 https://gems.ruby-china.org/ 下面已作處理vim

$ gem sources --remove https://rubygems.org/
//等有反應以後再敲入如下命令
$ gem sources -a https://gems.ruby-china.org/

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

$ gem sources -l

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

*** CURRENT SOURCES ***

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

3.1 安裝Cocoapods,在終端輸入命令:

注意:(Mac版本10.11以上,請直接跳到3.2)ruby

$ sudo gem install cocoapods

3.2 Mac系統版本10.11以上,上面的命令不生效

sudo gem install -n /usr/local/bin cocoapods
sudo xcode-select --switch /Applications/Xcode.app

4.安裝:

//將 Cocoapods Specs repository 複製到你電腦上 ~/.cocoapods 目錄下
pod setup

安裝須要花費比較多時間,請耐心等待,到這裏你已經成功安裝了Cocoapods。app

5.問題

(1)若是遇到以下問題:
圖片描述框架

移除原來的cocoapods:spa

$ sudo gem uninstall cocoapods  //交互時選擇 y 

從新執行3和4步。

(2)若是安裝失敗 ~/.cocoapods 文件夾裏面是空的,就須要從新setup,命令以下:

pod repo remove master  
pod setup

另附:

pod --version //查詢cocoapods版本
sudo gem install cocoapods --pre //更新cocoapods版本
pod setup解決方案

1.訪問 https://github.com/CocoaPods/...,而後將Specs項目fork到本身的github帳戶上。
2.下載GitHub Desktop, 而後clone Specs項目。
3.將clone的Specs項目的文件夾更名爲master,而後拖到/Users/用戶名/.cocoapods/repos目錄下。
4.運行pod setup

解釋:pod setup的本質就是將https://github.com/CocoaPods/...上的Specs項目clone到/Users/用戶名/.cocoapods/repos目錄下。若此目錄下已有Specs項目,則會將項目更新到最新的狀態。因爲Specs很大,容易致使pod setup失敗。這時就須要咱們手動安裝Specs。若直接從github上下載zip文件,因爲缺乏git文件,會致使cocoa pods不使用。若用git clone,因爲文件過大,容易致使失敗。可是使用GitHub Desktop軟件,則會提升clone的成功率,而且會給出clone的進度。

更新
可使用國內的鏡像地址(https://coding.net/u/hging/p/...),直接clone到/Users/用戶名/.cocoapods/repos目錄下,再將文件夾重命名爲master。


Cocoapods的使用

1.使用search命令搜索類庫名:好比AFNetworking

$ pod search AFNetworking

獲得結果以下圖:
圖片描述

從這個圖上,咱們看到AFN有好多版本,最新的版本是3.1.0.
注意第三行,這是咱們接下來要添加到Podfile文件裏面的內容。
按q退出

2.

(1)打開Xcode,新建一個工程,工程名爲swift_test。

(2)使用跳轉命令cd到工程目錄下:cd後面跟空格,而後跟的是工程目錄名。

$ cd /Users/ZGZ/Desktop/swift_test

(3)回車後,輸入命令---在工程目錄下,建立了一個Podfile文件

$ pod init

3.使用vim編輯Podfile文件

$ vim Podfile

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

$ pod 'AFNetworking', '~> 3.1.0’

按「 i 」進行編輯,在編輯完後按 esc ,而後按" : ",再輸入wq保存退出。

4.利用cocopods下載AFNetworking類庫

仍是在終端中的當前項目目錄下,運行如下命令:

$ pod install

安裝成功後,在工程目錄裏會看到多了一個.xcworkspace工程,之後打開項目就用 swift_test.xcworkspace 打開,而不是以前的.xcodeproj文件。

5.打開 CocoapodsSample.xcworkspace 工程,能夠看到AFNetwoking已經成功導入項目。

另附:

(1)若是有一些包已經存在了,或者咱們更改了Podfile裏面的版本,能夠在終端cd到該工程目錄下使用如下命令更新。

$ pod update

(2)關於Podfile文件編輯時,第三方庫版本號的各類寫法:pod ‘AFNetworking’ //不顯式指定依賴庫版本,表示每次都獲取最新版本pod ‘AFNetworking’, ‘2.0’ //只使用2.0版本pod ‘AFNetworking’, ‘>2.0′ //使用高於2.0的版本pod ‘AFNetworking’, ‘>=2.0′ //使用大於或等於2.0的版本pod ‘AFNetworking’, ‘<2.0′ //使用小於2.0的版本pod ‘AFNetworking’, ‘<=2.0′ //使用小於或等於2.0的版本pod ‘AFNetworking’, ‘~>0.1.2′ //使用大於等於0.1.2但小於0.2的版本,至關於>=0.1.2而且<0.2.0pod ‘AFNetworking’, ‘~>0.1′ //使用大於等於0.1但小於1.0的版本pod ‘AFNetworking’, ‘~>0′ //高於0的版本,寫這個限制和什麼都不寫是一個效果,都表示使用最新版本

相關文章
相關標籤/搜索