查看本地安裝過的cocopods相關東西
gem list --local | grep cocoapods
下面命令可以一鍵刪除 cocoapods及其所有組件
sudo rm -rf /usr/local/bin/pod ; gem list | grep cocoapods | awk '{print $1}' | while read line; do sudo gem uninstall $line; done
首先安裝 RVM
打開終端
curl -L https://get.rvm.io | bash -s stable --auto-dotfiles
期間可能會問你sudo管理員密碼肪跋,以及自動通過homebrew安裝依賴包赃蛛,等待一段時間后就可以成功安裝好 RVM。
然后,載入 RVM 環(huán)境(新開 Termal 就不用這么做了歉甚,會自動重新載入的)
source ~/.rvm/scripts/rvm
檢查一下是否安裝正確
rvm -v
如果出現(xiàn)跟下面類似的字符,則表明安裝正確
rvm 1.27.0 (latest) by Wayne E. Seguin , Michal Papis [https://rvm.io/]
用 RVM 安裝 Ruby 環(huán)境
列出已知的ruby版本
rvm list known
會出現(xiàn)以下字符
# MRI Rubies
[ruby-]1.8.6[-p420]
[ruby-]1.8.7[-head] # security released on head
[ruby-]1.9.1[-p431]
[ruby-]1.9.2[-p330]
[ruby-]1.9.3[-p551]
[ruby-]2.0.0[-p648]
[ruby-]2.1[.8]
[ruby-]2.2[.4]
[ruby-]2.3[.0]
[ruby-]2.2-head
ruby-head
可以選擇現(xiàn)有的rvm版本來進行安裝(假設以rvm 2.0.0版本的安裝為例)
?rvm install 2.0.0(可能需要管理員權限,使用sudo.$sudorvm install 2.0.0)
附加一些rvm操作方法
查詢已經安裝的ruby
rvm list
卸載一個已安裝版本
rvm remove 2.0.0
RVM 裝好以后,需要執(zhí)行下面的命令將指定版本的 Ruby 設置為系統(tǒng)默認版本
rvm 2.0.0 --default
同樣昌跌,也可以用其他版本號,前提是你有用 rvm install 安裝過那個版本
這個時候你可以測試是否正確
$ ruby -v
會出現(xiàn)ruby 2.0.0p481 (2014-05-08 revision 45883) [universal.x86_64-darwin14]類似字符
$ gem -v
2.6.3
更新gem
sudo gem update --system
這時候注意Ruby的默認源使用的是cocoapods.org照雁,國內訪問這個網址有時候會有問題蚕愤,網上的一種解決方案是將遠替換成淘寶的,替換方式如下:
$gem source -r https://rubygems.org/
$gem sources -a https://gems.ruby-china.com
報錯:
Error fetching https://gems.ruby-china.org/:
bad response Not Found 404 (https://gems.ruby-china.org/specs.4.8.gz)
原因是?ruby-china 更換了域名
https://gems.ruby-china.com
命令替換為?gem sources --add https://gems.ruby-china.com 解決
要想驗證是否替換成功了饺蚊,可以執(zhí)行:
?gem?sources?-l
正常的輸出結果:
*** CURRENT SOURCES ***
gem sources -a https://gems.ruby-china.com
到這里就已經把Ruby環(huán)境成功的安裝到了Mac OS X上
接下來就是CocoaPods的安裝
這時候萍诱,你再次在終端中運行:
sudo gem install cocoapods
等上十幾秒鐘,CocoaPods就可以在你本地下載并且安裝好了卸勺,不再需要其他設置。
當然我們也可以更新我們的CocoaPods烫扼,同樣也是使用ruby的gem命令:
sudo gem update cocoapods
或
sudo gem install -n /usr/local/bin cocoapods
然而你也可以更新CocoaPods的預覽版曙求,執(zhí)行下面的命令:
sudo gem update cocoapods--pre
然后執(zhí)行 pod setup
git clone https://github.com/CocoaPods/Specs.git ~/.cocoapods/repos/trunk
其實就是執(zhí)行sudo gem install cocoapods命令這么簡單,但這一步是最容易出現(xiàn)坑的。
pod repo list 查看源列表
pod repo remove trunk?移除trunk源
CocoaPods 鏡像使用幫助
CocoaPods 是一個 Cocoa 和 Cocoa Touch 框架的依賴管理器悟狱,具體原理和 Homebrew 有點類似静浴,都是從 GitHub 下載索引,然后根據索引下載依賴的源代碼挤渐。
對于舊版的 CocoaPods 可以使用如下方法使用 tuna 的鏡像:
pod repo remove master
pod repo add master https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git
pod repo update
新版的 CocoaPods 不允許用pod repo add直接添加master庫了苹享,但是依然可以:
cd ~/.cocoapods/repos
pod repo remove master
git clone https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git master
最后進入自己的工程,在自己工程的podFile第一行加上:
source 'https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git'
=========可能出現(xiàn)的狀況(坑)=========
問題一:While executing gem ... (Errno::EPERM) ?Operation not permitted - /usr/bin/fuzzy_match ? ?錯誤
解決方案 :
執(zhí)行sudo?gem?install?-n?/usr/local/bin?cocoapods??語句浴麻。然后提示gems?installed即可得问。
問題二、Setting up CocoaPods master repo 卡著不動
出現(xiàn)Setting up CocoaPods master repo软免,說明Cocoapods正在將它的信息下載到 ~/.cocoapods里宫纬;(這一步是很費時間的,等輸出Setup completed 安裝完成啦)
在此過程中可以右擊終端選 --->新建窗口膏萧;在新建的終端窗口輸入:
cd?~/.cocoapods
進入cocoa pods文件漓骚,然后在終端輸入:
du?-sh?*
即可查看下載的文件大小。也就可以知道是網速不好榛泛,還是源不可用了蝌蹂。
接下來我們要在項目里添加CocoaPods管理器
通過cd + 路徑進入我們的項目
例如$ cd /Users/Chen/Desktop/CocoaPodsTest如果你不知道自己的路徑,可以將文件夾拖入Termal曹锨。會自動幫你完成路徑
進入以下路徑
這時候需要創(chuàng)建一個文件來控制CocoaPods該下載什么孤个。這個文件就叫做“Podfile”(注意:文件名固定,而且沒有后綴)艘希。你創(chuàng)建一個Podfile文件硼身,然后在里面添加你需要下載的類庫。每個項目只需要一個Podfile文件覆享。
利用vim創(chuàng)建Podfile佳遂,運行:
$ vim Podfile
點擊i進入編輯模式
然后在Podfile文件中輸入以下文字:
platform :ios,'7.0'
pod'MJRefresh','~> 3.1.0'
這句話意思是支持的iOS最高版本是iOS7.0, 要下載的MJRefresh版本是3.1.0
然后保存退出。vim環(huán)境下撒顿,保存退出命令是:
按下ESC ?然后輸入:wq再回車
如果我們不知道cocoaPods管理的庫中丑罪,是否有你想要的庫,那么你可以通過$ pod search xxx命令進行查找凤壁,
例如:
$ pod search MJRefresh
會出現(xiàn)
-> MJRefresh (3.1.0)
An easy way to use pull-to-refresh
pod 'MJRefresh', '~> 3.1.0' ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//你只需要將這句話加上就好了
- Homepage: https://github.com/CoderMJLee/MJRefresh
- Source: ? https://github.com/CoderMJLee/MJRefresh.Git
- Versions: 3.1.0, 3.0.8, 3.0.7, 3.0.6, 3.0.5, 3.0.4, 3.0.3, 3.0.2, 3.0.1,
3.0.0, 2.5.0, 2.4.12, 2.4.11, 2.4.10, 2.4.9, 2.4.8, 2.4.7, 2.4.6, 2.4.5,
2.4.4, 2.4.3, 2.4.2, 2.4.1, 2.4.0, 2.3.2, 2.3.1, 2.3.0, 2.2.1, 2.2.0, 2.1.0,
2.0.4, 2.0.3, 2.0.2, 2.0.1, 2.0.0, 1.4.7, 1.4.6, 1.4.5, 1.4.4, 1.4.3, 1.4.1,
1.4.0, 1.3.8, 1.3.7, 1.3.6, 1.3.5, 1.3.4, 1.3.3, 1.3.2, 1.3.1, 1.3.0, 1.2.0,
1.1.0, 1.0.5, 1.0.4, 1.0.3, 0.0.1 [master repo]
這時候輸入
$ pod install
會出現(xiàn)以下效果吩屹。時間會有點慢。
這時候打開項目文件夾
我們可以看見項目多了很多東西拧抖。
以后打開項目通過選中的這個煤搜,而不用原來文件。
我們還需要更改一個屬性:將Other Linker Flags 值設為?$(inherited)
當我們以后使用coacoaPods時我們只需要更改項目里的Podfile文件
當我們每次修改了Podfile這個文件后唧席,一定要記得執(zhí)行命令:$ pod install擦盾,還可以執(zhí)行$ pod update來更新類庫
在使用pod install/pod update更ai新很慢嘲驾,原因在于當執(zhí)行以上兩個命令的時候會升級CocoaPods的spec倉庫,加一個參數(shù)可以省略這一步迹卢,然后速度就會提升不少辽故。加參數(shù)的命令如下:
pod install --verbose --no-repo-update
pod update --verbose --no-repo-update