現在的cocoapods與之前比較,有很多不一樣的地方。
因為現在cocoapods需要ruby>=2.2,所以:
1.首先查看ruby是否是最新版的。
#查看當前ruby版本ruby是通過rvm安裝的所以需要先安裝rvm后查看ruby是否是最新的(通過查看ruby版本列表來判斷),然后在終端需要中輸入以下命令:
$?ruby?-v
ruby?2.0.0
(1)安裝RVM.RVM:Ruby Version Manager,Ruby版本管理器,包括Ruby的版本管理和Gem庫管理(gemset)
curl?-L?get.rvm.io?|?bash?-s?stable
等待一段時間后就可以成功安裝好 RVM
source?~/.bashrc
source?~/.bash_profile
測試是否安裝正常
rvm?-v
(2)用RVM升級Ruby
#查看當前ruby版本ruby是通過rvm安裝的所以需要先安裝rvm后查看ruby是否是最新的(通過查看ruby版本列表來判斷),然后在終端需要中輸入以下命令:
$?ruby?-v
ruby?2.0.0
#列出已知的ruby版本 --找到最新的版本安裝
$?rvm?list?known
#安裝ruby?2.3.0 ?這個你隨意只要大于2.2就行
$?rvm?install?2.3.0
注意:有時會出現錯誤 提示
Requirements installation failed with status: 1.
原因:因Mac未安裝Homebrew造成的
解決方法:在命令行輸入以下指令安裝Homebrew或者進入官網找到最新的下載鏈接
Homebrew官網:http://brew.sh/index_zh-cn.html??或者
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
注意2 有時WARNING: You have '~/.profile' file, you might want to load it,錯誤,可嘗試命令行輸入
?echo"source ~/.profile">> ~/.bash_profile
2.更換Ruby鏡像--淘寶的那個鏡像(https://ruby.taobao.org/?)已經不可用了。官方的需要FQ。所以我們現在用最新支持的ruby鏡像(https://gems.ruby-china.org/) ---->我用的是這個
注:有的可以使用淘寶的源,也不報錯,具體原因未知,如無報錯可繼續使用淘寶鏡像。
需要的命令行:
gem sources --remove https://rubygems.org/
gem sources -a https://gems.ruby-china.org/
gem sources -l ?(用來檢查使用替換鏡像位置成功)
出現
則說明成功了。
3.下載安裝CocoaPods
PS: 遇到這個錯誤:
RROR:? While executing gem ... (Errno::EPERM)
Operation not permitted - /usr/bin/pod
Yosemite用這句:
在命令行中輸入:
$sudo gem install cocoapods
蘋果系統升級到 OS X EL Capitan用下面這句:
$sudo gem install -n /usr/local/bin cocoapods
更新一下
更新:sudo gem update cocoapods
安裝
在這里會很快就好了。。。網上教程說這樣就已經完成安裝了。。但我試了一下,直接搜索一下。在終端中輸入:pod search ?AFNetworking。會出現“Setting up CocoaPods master repo“提示,而且很久一直不動,網上說因為沒FQ的原因。但是我們已經將bury鏡像已經改了,為什么還會這樣呢?。還有一個原因是因為在后臺下載,還沒下載完成,所以會這樣。
在這里我等了好久。通過新開一個終端窗口,輸入"cd ~/.cocoapods/"命令行跳到cocoapods文件夾內,執行"du -sh *"查看文件夾的大小。發現一直是0??毂罎⒘?。
? ? ?重頭再來。首先將ruby更新到最新(上邊方法)、將gem更新到最新、將cocoapods更新到最新。在將cocoapods更新到最新時,查到需要執行"pod setup",但是執行這個時會出現一直是“Setting up CocoaPods master repo“,但是查看大小還是0。此外還會出現下面這個新的錯誤(這個發現讓我欣喜若狂,起碼不是那么單調了,或許會成為突破口):
[!] An error occurred while performing `git pull` on repo `master`.
[!] /usr/bin/git pull --ff-only
這個錯誤應該是說這個節點有問題。就又找資料,然后試試把cocoapods的節點刪除,重新添加一個節點,或許就行,說干就干:
原因: Cocoapods的分支不支持當前最新的Xcode版本
解決辦法: 刪除master分支 重新建立新的分支
sudo rm -fr ~/.cocoapods/repos/master
然后再:?pod setup
注意 :按我的經驗 此時有兩種選擇?
第一種 ?親測推薦
里面的做法,去百度網盤 或360網盤訪問密碼 1ee5下載這個master文件在網盤上。
下載之后,直接拖到repos 文件夾里就可以了。簡單粗暴
第二種:老老實實等他下載完成
在pod setup的過程中又是這個提示"Setting up CocoaPods master repo",當時的感覺就快要砸電腦了,最后不死心去查看了一下cocoapods文件夾的大小。結果:
。。沒錯,沒有看錯,大小居然一直在增加。心懷激動的慢慢等待。
最終大小
過了大概十幾二十分鐘左右,pod setup這個操作成功了。
這樣,整個cocoapods安裝應該成功了吧。我迫不及待的 想要試試。輸入"pod search?AFNetworking" 居然有內容出來。
然后按照之前的教程在終端中,cd到項目總目錄,先創建一個Project,然后創建一個single View Application到桌面,終端中輸入cd+空格,把剛剛創建到桌面的文件夾拖到終端中,回車
建立Podfile(配置文件)
接著上一步,終端輸入 ? vim Podfile
鍵盤輸入 i,進入編輯模式,輸入:
然后按Esc,并且輸入“ :”號進入vim命令模式,然后在冒號后邊輸入wq
注意:鍵盤輸入 :后,才能輸入wq?;剀嚭蟀l現PodTest項目總目錄中多一個Podfile文件
激動人心的時刻到了:確定終端cd到項目總目錄,然后輸入?pod install。。。然后你會發現。。。
注意 : 如果你是這樣寫的,可能會
platform :ios, '7.0'
pod 'MBProgressHUD', '~> 0.8'
提示這個錯誤:[!] The dependency `MBProgressHUD`isnot usedin any concrete target.
原來新的cocoapods不能像之前那樣安裝第三方了?,F在的格式是要加上項目的target。如下:
platform :ios,'8.0'
use_frameworks!
target'MyApp'do
pod?'AFNetworking','~> 3.0'
pod'SDWebImage','~>3.7.6'
end
里面的MyApp記得替換為自己工程里面的target。這樣就基本OK了,執行pod install / pod update 就都可以了。
在使用 pod install 安裝第三方庫的時候可能會卡在 Updating local specs repositories
//解決辦法把podinstall換成 podinstall--verbose --no-repo-update
end:終于結束了??偨Y:安裝過程出錯,則刪除并重新(更新)所有的需要的環境:(ruby、gem、cocoapods、其中包括cocoapods的節點),替換新的ruby鏡像即可。
// 9.27 更新 讀者給的建議 大家可以參考
下載最新的master(https://github.com/CocoaPods/Specs,最好用360下載有斷點續傳功能)然后按照上面步驟放進repos中,這時可以pod reaserch AFN了,但是卻不能用pod install 。解決辦法就是把上述網盤中的master 中的 .git文件夾整個復制到,~/.cocoapods/新的master/文件夾下 。
cocoapods,參考的安裝流程:
http://www.cnblogs.com/guanshenbao/p/5534578.html#undefined(__君少)