CocoaPods - 安裝及使用

安裝CocoaPots的順序:Xcode -> Homebrew -> RVM -> Ruby -> CocoaPots;

安裝前準(zhǔn)備:

  1. 一般系統(tǒng)curl的postBuffer默認(rèn)值太小,安裝過程中會報如下錯誤:
    error: RPC failed; curl 18 transfer closed with outstanding read data remaining
    先終端運行命令,加大postBuffer:
$ Git config --global http.postBuffer 524288000

附:

  • 如下命令可以查看postBuffer空間大小:
$ git config --list
  1. raw.githubusercontent.com有時連不上,進(jìn)入系統(tǒng)hosts文件修改配置。(進(jìn)入方法請參考《mac安裝hombrew報錯》
    在hosts文件中添加如下兩行:
151.101.76.133  raw.githubusercontent.com
13.229.188.59   github.com

第一步:安裝Homebrew

  1. 終端運行命令(獲取最新命令:《Homebrew》),開始安裝:
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

安裝完成提示:

==> Installation successful!

附:

  • 卸載Homebrew:
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"

第二步:安裝RVM

  1. 終端運行命令:(參考:《Ruby Version Manager (RVM)》第二個命令)
$ \curl -sSL https://get.rvm.io | bash -s stable

期間可能會問你sudo管理員密碼,以及自動通過homebrew安裝依賴包,等待一段時間后就可以成功安裝好RVM。
安裝完成提示:

Thank you for using RVM!

  1. 終端運行命令,載入 RVM 環(huán)境:
$ source ~/.rvm/scripts/rvm
  1. 終端運行命令,驗證是否安裝正確:
$ rvm -v

如顯示以下信息:
RVM version 1.29.9 (latest) is installed, yet version 1.29.10 (1.29.10) is loaded.
Please open a new shell or run one of the following commands:
rvm reload
echo rvm_auto_reload_flag=1 >> ~/.rvmrc # OR for auto reload with msg
echo rvm_auto_reload_flag=2 >> ~/.rvmrc # OR for silent auto reload

則依次使用命令升級,然后再次執(zhí)行上一步驗證,終端運行:

$ rvm reload
$ rvm get 1.29.10

附:《rvm安裝與一些命令》
如出現(xiàn)下方類似結(jié)果,則表示安裝正確:

rvm 1.29.1 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io/]

第三步:用RVM安裝Ruby環(huán)境

  1. 終端運行命令,列出已知ruby版本:
$ rvm list known
  1. 終端運行命令,安裝ruby:(2.4.0為列出的版本中最下方一個)
$ rvm install 2.4.0

可能需要管理員權(quán)限,使用:

$ sudo rvm install 2.4.0

如若報如下錯誤:
Error running '__rvm_make install',
please read /Users/UserName/.rvm/log/1507886631_ruby-2.4.1/install.log
There has been an error while running make install. Halting the installation.

則先卸載剛才未安裝成功的Ruby,然后終端運行:

$ xcode-select --install

如若報如下錯誤:
Error: Running Homebrew as root is extremely dangerous and no longer supported.
As Homebrew does not drop privileges on installation you would be giving all
build scripts full access to your system.

給當(dāng)前用戶添加目錄權(quán)限,終端運行:

$ sudo chown -R $(用戶名) /usr/local

參考文章:《homebrew 無法安裝提示不能在根目錄下使用》
安裝軟件,然后再重新執(zhí)行步驟2安裝。
安裝完成提示:

Install of ruby-2.4.0 - #complete

  1. 終端運行命令,在rvm裝好后,設(shè)置系統(tǒng)默認(rèn)版本:
$ rvm 2.4.0 --default

附:

  • 查看已安裝的ruby:
$ rvm list
  • 卸載一個已安裝的版本:
$ rvm remove 2.4.0

第四步:修改Ruby的默認(rèn)源

  1. 終端運行命令,刪除已有源:
$ gem sources --remove https://rubygems.org/
  1. 終端運行命令,添加源:
$ gem sources -a https://gems.ruby-china.org/

參考文章:《RubyGems 鏡像- Ruby China》
以上兩句可合并為:

$ gem sources --add https://gems.ruby-china.org/ --remove https://rubygems.org/
  1. 驗證是否替換成功:
$ gem sources -l

第五步:更新MAC的Gem

  1. 終端運行命令:
$ sudo gem update -n /usr/local/bin —system

附:

  • 查看已安裝的gem版本:
$ gem —version

第六步:安裝CocoaPods

  1. 終端運行命令,開始安裝:
$ sudo gem install -n /usr/local/bin cocoapods

安裝完成提示:

26 gems installed

  1. 終端運行命令,更新pod:
$ pod setup

如若報錯:error: RPC failed; curl 56 SSLRead() return error -36| 1024 bytes/s
則終端運行:

$ sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer

后再重新安裝。
安裝完成提示:

Setup completed

附:

  • 更新CocoaPods:
$ sudo gem update cocoapods
  • 查看是否可以ping通github:
$ sudo gem update --system
  • 卸載CocoaPods:
  1. 獲得路徑:
$ which pod
  1. 移除pod組件:
$ sudo rm -rf /usr/local/bin/pod

后面的地址就是上一步的地址,需輸入電腦密碼。

  1. 查看gems中本地程序包:
$ gem list
  1. 刪除cocoapods部分:
$ sudo gem uninstall cocoapods
  1. 查看是否刪除成功:
$ pod search AFNetworking

刪除成功提示:

command not found

第七步:查看是否安裝成功

  1. 終端運行命令,搜索三方庫看是否成功:
$ pod search RMPickerViewController

如提示:“Creating search index for spec repo 'master'.. Done!”,請等待。

  1. 搜索成功,q鍵退出。

第八步:使用CocoaPods安裝三方庫

  1. 終端運行命令,更改路徑:
$ cd /Users/你的電腦賬戶名/Documents/工程名

如果你不知道自己的路徑,可以將文件夾拖入Termal,會自動幫你完成路徑輸入。

  1. 終端運行命令,在路徑下新建Podfile文件:
$ touch Podfile
  1. 手動在路徑下選中剛才新建的Podfile文件,右鍵選擇使用XCode打開,在其中輸入以下代碼:(亦可命令輸入,不過有點麻煩,本人習(xí)慣用XCode編輯)
    此為cocoapods 1.0.0后Podfile新寫法,參考文章:《CocoaPods升級1.0.0碰到的問題》

platform :ios, '10.0'
inhibit_all_warnings!
target '工程名' do
use_frameworks!
pod 'MJRefresh', '~> 3.1.9’
end

  1. 終端運行命令,安裝三方庫:
$ pod install

安裝完成提示:

[!] Please close any current Xcode sessions and use 工程名.xcworkspace for this project from now on.
Sending stats
Pod installation complete! There is 1 dependency from the Podfile and 1 total
pod installed.

附:

  • 更新本地pod庫:
$ pod update

pod install 與 pod update 的區(qū)別,參考這里->。

  • 查看三方庫版本(如上方第七步):
$ pod search JSONModel

以JSONModel為例,“JSONModel”為需要查看的類名。搜索成功后q鍵退出。

附:關(guān)于Podfile文件

  1. platform:指定項目支持的平臺以及最低版本;
  2. “inhibit_all_warnings!”:全局禁止顯示警告,這個特性也能在子target里面定義,如你只想屏蔽某pod里面的警告可以如下寫:
pod 'Objection', :inhibit_warnings => true
  1. target:指定依賴庫;
  2. “use_frameworks!”:告訴CocoaPods使用.frameworks來代替.a靜態(tài)庫,當(dāng)使用Swift的時候使用。詳見Podfile中的 use_frameworks!
  3. pod:指定工程的一個依賴,一個依賴項通過pod名和可選的版本號來聲明。如不寫后方版本號(如只寫:pod 'Objection'),則表示直接安裝最新版本;如寫版本號(如只寫:pod 'Objection', '0.1’),則表示安裝指定版本號的版本;對版本號的操作除了指定與不指定,你還可以做其他操作:

pod 'Objection', '>0.1' #------ 高于0.1的任何版本;
pod 'Objection', '>=0.1' #------ 版本0.1和任何更高版本;
pod 'Objection', '<0.1' #------ 低于0.1的任何版本;
pod 'Objection', '<=0.1' #------ 版本0.1和任何較低的版本;
pod 'Objection', '~>0.1.2' #------ 版本 0.1.2的版本到0.2,不包括0.2。這個基于你指定的版本號的最后一個部分。這個例子等效于>= 0.1.2并且 <0.2.0,并且始終是你指定范圍內(nèi)的最新版本;

參考文章:
《CocoaPods安裝和使用教程以及RVM、RuBy的安裝配置》
《Podfile語法參考(譯)》
《CocoaPods 詳解》
等。。。

另:聽說可以使用CocoaPods.app,有興趣的可以看看!
網(wǎng)上的使用教程:《iOS Cocoapods APP 使用教程》
下載地址:cocoapods.org

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • CocoaPods作用:集成與更新第三方SDK。 因為更新SDK的時候失敗了,沒辦法只好重裝。 一. 1.先卸載老...
    1d5cb7cff98d閱讀 1,027評論 0 0
  • Xcode->Homebrew->RVM->Ruby->CocoaPods??上面是安裝順序,所以要想安裝Coco...
    DH_Fantasy閱讀 7,055評論 5 6
  • 跟他妹妹睡一張床,晚上她吐槽他哥,最后問我,姐姐你看上他啥了?!是哦,說不出來的,看上他啥了?!消極,偶爾自虐...
    琚家小穎穎閱讀 245評論 0 1
  • 很多人想讀書,甚至沒有很堅定的想法或目的,只是冥冥之中很是贊同“萬般皆下品惟有讀書高”,而且從古往今來很多名家語錄...
    依云杉閱讀 758評論 1 3
  • 信陽市平橋二小 楊磊 《道德經(jīng)》第四十一章作業(yè):我們從小就教育孩子:爸爸媽媽也會有錯,有錯了你...
    楊仁珮001閱讀 825評論 0 1

友情鏈接更多精彩內(nèi)容