當我打開下載的demo的時候,發(fā)現(xiàn)demo里用的是pods文件,(此時已經(jīng)抓狂),因為我沒怎么用過,正好又閑來無事,所以打算學學如何安裝cocoapods(坑路漫漫無期遠,真是從一個坑中跳出又跳進另一個深不見底的坑中...........).
**
首先我們就要了解什么是CocoaPods
**CocoaPods是一個用來幫助我們管理第三方依賴庫的工具程癌。它可以解決庫與庫之間的依賴關系腺律,下載庫的源代碼氓侧,同時通過創(chuàng)建一個Xcode的workspace來將這些第三方庫和我們的工程連接起來袱巨,供我們開發(fā)使用。使用CocoaPods的目的是讓我們能自動化的、集中的绸罗、直觀的管理第三方開源庫。
---------------------來吧開始入坑步驟吧-----------------------
一.Ruby版本的更新
**很多人會迷惑豆瘫,為什么安裝CocoaPods珊蟀,需要更新Ruby。因為CocoaPods使用Ruby腳本寫的外驱,系統(tǒng)自帶的Ruby版本太低育灸,無法正常運行CocoaPods的,需要一個Ruby高版本的Ruby讓CocoaPods正常工作昵宇。
mac默認是有的(https://rubygems.org/) 但是不能用,
以前接觸的時候說是安裝淘寶的鏡像(https://ruby.taobao.org/),
無論是http還是https的,我都沒有安裝成功,
后來百度后得知用https://gems.ruby-china.com/
添加ruby-china Source到gem中
gem sources -a https://gems.ruby-china.com
(這個是中國的,恩,是中國的....),當然跟換這個ruby的時候又出現(xiàn)了新的問題,他得和mac的macOS系統(tǒng)版本對應,我的是10.12,相對的ruby的版本應該2.3.0以上的.
(至于如何跟新ruby,參考Ruby升級的最新方法http://www.reibang.com/p/659d4f83ab13)
查看ruby版本的方法:(表示我已經(jīng)安裝好了2.3.0版本的....略喜)
YJCdeMac-mini:~ elt$ ruby -v
ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-darwin16]
二,安裝cocoapods
1.查看資源
YJCdeMac-mini:~ elt$ gem sources -l
*** CURRENT SOURCES ***
https://gems.ruby-china.org/ <<<-----有啦
注意!!!!得確保有一個 如果還有其他鏡像,要移除
$ gem sources --remove https://rubygems.org/
或者
$ gem sources --remove https://ruby.taobao.org/
2.命令輸入安裝cocoaPods
YJCdeMac-mini:~ elt$ sudo gem install cocoapods
接著要求此處需要輸入密碼
Password:(此處有坑....深坑....我輸了半天結(jié)果什么都沒顯示,奇了個怪,啥玩意啊?
原來:終端輸入密碼不會顯示,但是實際已經(jīng)輸入了,當你輸入完按完敲擊回車就可以了- -!~
原諒我因為這個真不知道,隔行如隔山,此時此處,深有體會)
緊接著漫長的等待.......差不多半個小時吧.
出現(xiàn)一堆數(shù)據(jù)(等待需要很久的時間,與網(wǎng)速有關,我的是下載了三個相關文件)
Fetching: cocoapods-trunk-1.1.2.gem (100%)
Successfully installed cocoapods-trunk-1.1.2
........
remote: Counting objects: 1159361, done.
remote: Compressing objects: 100% (584/584), done.
remote: Total 1159361 (delta 232), reused 33 (delta 33), pack-reused 1158714
Receiving objects: 100% (1159361/1159361), 387.09 MiB | 711.00 KiB/s, done.
Resolving deltas: 100% (550183/550183), done.
Checking out files: 100% (144863/144863), done
........感覺是成功安裝了 所以嘗試搜索下有沒有AF(搜索的時候可以不用打全,模糊搜索)
YJCdeMac-mini:~ elt$ pod search afnet
[!] Unable to find a pod with name, author, summary, or description matching `afnet`
結(jié)果又冒出新的紅色錯誤,大意不能搜索三方庫(這就尷尬了,咋搞?又得百度)
說是search_index.json這個文件的原因磅崭,可以將其刪除,然后重新生成便可解決此問題瓦哎。
百度搜到的方法是 在終端輸入
rm ~/Library/Caches/CocoaPods/search_index.json
我想應該可以了吧_~于是再次輸入
YJCdeMac-mini:~ elt$ pod search afnet
可是可是可是可是.............(抓狂ing.....)
又出現(xiàn)問題了............
卡在這個地方不動了......(下班了~心累了標記待續(xù)....)
Creating search index for spec repo 'master'..
cocoaPods大爺我又來了.......找百度大爺去.....(坑啊~~~真的坑我以為它死在這不動了,于是想辦法退出,關掉,重新下載,等待,退出......又循環(huán)了一遍??)最終無意發(fā)現(xiàn).........
解釋如下:(怪我沒耐心,怪我傻,怪公司網(wǎng)速不給力,怪我電腦,怪我怎么沒早早看到.怪我,怪我啊~)
如果是第一次執(zhí)行這條語句砸喻,會出現(xiàn)
Creating search index for spec repo 'master'..字樣
,需要等待一段時間蒋譬,時間長短由網(wǎng)速決定
加載完之后割岛,字樣是這樣的(多出一個----->Done)
Creating search index for spec repo 'master'.. Done!,
緊接著就是AFNetworking的相關信息
呵呵了~~~真的,呵呵了,抱著抓狂的心態(tài),苦苦等待.....終于出現(xiàn)了
期間遇到一點小尷尬,一直往下拖,無窮盡也,好吧,請教一下,原來輸入wq就可以退出......
至此!!!!!!!cocoapods 就安裝成功啦~
當然百度搜索的時候 有的人提出 pod setup 這一步 當我執(zhí)行操作的時候,等了一會出現(xiàn),是設置相關,不是太明白次步驟....(求解)
二.使用pods
- 1.創(chuàng)建新項目
終端輸入,cd 將項目拖入cd后
YJCdeMac-mini:podsText1 elt$ cd /Users/elt/Desktop/podsText1
- 2.初始化pods
YJCdeMac-mini:podsText1 elt$ pod install
- 3.給該項目添加一個podfile 文件 并進入編輯頁面
YJCdeMac-mini:podsText1 elt$ vim podfile
在此之前,先找到需要的第三方 pod search xxx第三方名字,以及寫法
eg:MBProgressHUD
進入該頁面,鍵盤輸入 "i" 即進入編輯頁面,
移動上下鍵,調(diào)整小黑快的位置
按Esc退出編輯狀態(tài)
輸入“ :”號進入vim命令模式犯助,然后在冒號后邊輸入wq 回車鍵
!注意:鍵盤輸入 :后癣漆,才能輸入wq∫睬校回車后發(fā)現(xiàn)PodTest1項目總目錄中多一個Podfile文件
- 4.將第三方導入你的文件中了(??) 需要的時間比較長一些 別著急慢慢等待 (與個人網(wǎng)絡因素有關)
YJCdeMac-mini:podsText1 elt$ pod install
[注意!]執(zhí)行"pod install (如果終端出現(xiàn)updating local specs repositories,
那么請用ctrl+c強制結(jié)束命令進程,
然后執(zhí)行 pod install --verbose --no-repo-update 或者 pod install --no-repo-update"
之后再項目文件中你會發(fā)現(xiàn)多出很多東西
注意:現(xiàn)在打開項目不是點擊 PodTest.xodeproj了扑媚,而是點擊 PodTest.xcworkspace
- 5.該使用第三方了,在使用頁面
[注意!]不在是我們之前的#import "xxx.h",而是#import <xxx.h>
??~~可以使用了
至此,pods安裝使用基本都已經(jīng)完成了,是不是很開心?NONONO,其實還是有坑的,比如:添加,刪除,跟新,又得折騰一會.......(不過會一種方法,其他都是浮云)
四,增刪改查
1.添加新的第三方
兩種方法:
1.用終端添加:cd打開文件---->進入編輯頁面vim podfile(此時就不用再創(chuàng)建podfile文件了,因為已經(jīng)存在了)------>在編輯頁面pod 'xxx(第三方名字)', '~> x.x.x(版本號)'--------->退出編輯,執(zhí)行pod install 就OK拉~~~
以下表示添加成功~~~
項目中也添加
2.第二種方法:eg:添加MBProgressHUD
輸入 pod 'MBProgressHUD', '~> 1.0.0'
在終端cd打開文件---->執(zhí)行pod install (或者pod install --no-repo-update,貌似這個快一點) 就OK拉~~~
2.刪除某第三方
還是兩種方法 ,直接將以下刪除,重復執(zhí)行終端操作:
在終端cd打開文件---->執(zhí)行pod install (或者pod install --no-repo-update,貌似這個快一點) 就OK拉~~~
pod 'xxx(第三方名字)', '~> x.x.x(版本號)'
eg: 刪除pod 'YBPopupMenu', '~> 0.1.2'
3.跟新某第三方
eg:我項目中是2.0的
pods search 是3.1.0的
直接將pod 'AFNetworking', '~> 2.0'換成pod 'AFNetworking', '~> 3.1.0',終端操作:
在終端cd打開文件---->執(zhí)行pod install (或者pod install --no-repo-update,貌似這個快一點) 就OK拉~~~
4.查看項目中第三方/pods查找第三方(這個其實沒必要,為了(押韻?)(好看?)(順口?)(數(shù)據(jù)庫?)....你懂得)
直接點開podfile/pods search XXX第三方
五.刪除整個項目中的pods(Pods讓你的項目出現(xiàn)了問題,不好用甚至是惡心雷恃,想將其從項目中徹底移除......好吧,繼續(xù))(百度查的,原文http://www.cnblogs.com/oc-bowen/p/5251668.html)
- 1.刪除工程文件夾下的Podfile疆股、Podfile.lock和Pods文件夾
- 2.刪除xcworkspace文件。
- 3.打開xcodeproj文件倒槐,刪除項目中的Pods文件夾及Pods.xcconfig引用和libpods.a:
- 4.打開Build Phases選項旬痹,刪除Check Pods Manifest.lock和Copy Pods Resources,以及Embeded Pods Frameworks:
- 5.編譯運行,咳咳~over了
作者有句話看的我揪心,但又貼切(其實不喜歡)....送給大家
我虐代碼千百遍讨越,代碼待我如初戀两残!
-------------------------總結(jié)一些pod終端命令------------------------
- Pod 安裝
添加源
$ sudo gem sources -a https://ruby.taobao.org/
刪除源
$ sudo gem sources -r https://rubygems.org/
安裝
$ sudo gem install cocoapods
設置
$ pod setup
- gem 常用命令
查看gem源
$ gem sources –l
gem自身升級
$ sudo gem update --system
查看版本
$ gem --version
清除過期的gem
$ sudo gem cleanup
安裝包
$ sudo gem install cocoapods
刪除包
$ gem uninstall cocoapods
更新包
$ sudo gem update
列出本地安裝的包
$ gem list
- pod 命令
創(chuàng)建默認的 Podfile
$ pod init //pod --help install
第一次使用安裝框架 //只用安裝一次,之后使用 添加刪除都用 pod update --no-repo-update
$ pod install
#安裝框架,不更新本地索引把跨,速度快
$ pod install --no-repo-update
#今后升級人弓、添加、刪除框架着逐,或者框架不好用
$ pod update
更新框架崔赌,不更新本地索引意蛀,速度快
$ pod update --no-repo-update
#搜索框架
$ pod search XXX#
幫助
$ pod --help
- 小知識
期間 學會幾個小知識(因為完全不會這個,所以感覺學到了)
1.打開安裝的cocoapods的路徑 ---> ~/.cocoapods
2.當發(fā)現(xiàn)終端 卡在Creating search index for spec repo 'master'..
不動的時候 可以按 ctrl+z 退出- - ~~
以后遇到問題再添加吧.....晚安