1.首先查看ruby的版本
ruby -v
2.查看rvm 版本
rvm -v
2.1 控制臺輸出zsh: command not found: rvm問題
第一步下載rvm
git clone https://github.com/rvm/rvm.git
下載完之后、根據(jù)路徑、到rvm文件夾下悠垛、 找到 /bin/rvm-installer中 rvm-installer雙擊
安裝完顯示
2.2需要配置環(huán)境變量
vi ~/.bash_profile
// 看有沒有這一行线定,沒有的話就在最后輸入
[[ -s "HOME/.rvm/scripts/rvm"
輸入 :wq // 保存并退出
終端輸入
source ~/.rvm/scripts/rvm
rvm -v
看到下面rvm版本說明安裝成功
3.更換ruby鏡像源
(gem更新)
sudo gem update --system
//查看源。
gem sources -l
//移除源确买。
gem sources --remove https://rubygems.org/
//更換源斤讥。
gem sources --add https://gems.ruby-china.com/
//查看是否更新成功。
gem sources -l
(gem版本)
gem --version
4.安裝CocoaPods
sudo gem install -n /usr/local/bin cocoapods
pod安裝成功之后一個(gè)首先的操作就是執(zhí)行命令(不是必須的):
pod setup(安裝本地庫)【可以用git clone替代】
替代后要 pod repo update(更新本地庫)
pod --version(pod版本)
pod 安裝是否成功(1為安裝成功湾趾,0為不成功)
pod repo list
所有的第三方開源庫的Podspec文件都托管在https://github.com/CocoaPods/Specs
我們需要把這個(gè)Podspec文件保存到本地芭商,這樣才能讓我們使用命令pod search 開源庫搜索一個(gè)開源庫,怎樣才能把github上的Podspec文件保存本地呢搀缠?那就是 pod setup
執(zhí)行pod setup時(shí)铛楣,CocoaPods 會(huì)將第三方的podspec索引文件更新到本地的~/.cocoapods/repos目錄下
如果沒有執(zhí)行過 pod setup,那用戶根目錄下~找不到.cocoapods/repos目錄的胡嘿,沒有創(chuàng)建這個(gè)目錄蛉艾。
如果執(zhí)行 pod setup,并且命令沒有執(zhí)行成功衷敌,那么會(huì)創(chuàng)建~/.cocoapods/repos目錄勿侯,只不過目錄是空的。
如果執(zhí)行 pod setup缴罗,并且命令執(zhí)行成功助琐,說明把github上的Podsepc文件更新到本地,那么會(huì)創(chuàng)建~/.cocoapods/repos目錄面氓,并且repos目錄里有一個(gè)master目錄兵钮,這個(gè)master目錄保存的就是github上所有第三方開源庫的Podspec索引文件。
但是第一次執(zhí)行pod setup時(shí)舌界,這個(gè)github的Podspec索引文件比較大掘譬,有 300M 左右(以后會(huì)越來越大的),所以第一次更新時(shí)非常慢.要耐心等待......可以進(jìn)去目錄~/.cocoapods/repos使用命令du -sh *來查看下載文件的大小了
怎么能快點(diǎn)呢呻拌?
5.clone CocoPods倉庫 葱轩,這里用的是清華大學(xué)fork的CocoaPods倉庫
cd ~/.cocoapods/repos
git clone https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git ~/.cocoapods/repos/trunk
clone完成后,需要cd 到trunk進(jìn)行更新操作
pod repo update
然后就可以搜索AFNetworking庫了
也可以用gitee上的一個(gè)私人fork的倉庫藐握,這個(gè)倉庫比清華的速度更快靴拱,但是有可能更新不及時(shí)
git clone https://gitee.com/mirrors/CocoaPods-Specs.git ~/.cocoapods/repos/trunk
官方庫【用Git clone 拉取因?yàn)轫?xiàng)目太大,只拉取深度為1的條件就好了】
pod setup 【提示:Setup completed】
cd ~/.cocoapods/repos
git clone --depth 1 https://github.com/CocoaPods/Specs.git master
上面CocoaPods倉庫選擇一個(gè)clone就行了
查看倉庫
~/.cocoapods/repos
常用pod指令
pod install --verbose --no-repo-update
該命令只安裝新添加的庫猾普,已更新的庫忽略
pod update 庫名--verbose --no-repo-update
該命令只更新指定的庫袜炕,其它庫忽略
更新所有的第三方庫:pod update --verbose --no-repo-update
podfile 里面刪除要?jiǎng)h除的庫
當(dāng)需要在CocoaPods中刪除一個(gè)我們不要的庫時(shí) 可以在Podfile中直接刪除相關(guān)庫
個(gè)人建議使用 pod install --verbose --no-repo-update
查看Cocoapods引入第三方庫的版本號
1.打開終端,cd 項(xiàng)目文件目錄
2.執(zhí)行命令:cat Podfile.lock
3.查看輸出:Podfile.lock文件會(huì)跟蹤每個(gè)pod的已安裝版本并鎖定這些版本初家。
執(zhí)行pod outdated命令偎窘,可以查看項(xiàng)目中非最新的第三方庫的名字乌助、版本號以及對應(yīng)的最新的版本號,項(xiàng)目中已經(jīng)是最新的庫不顯示
依賴庫的基本寫法
pod 'JYCarousel', //不顯式指定依賴庫版本评架,表示每次都獲取最新版本
pod 'JYCarousel', '0.01'//只使用0.0.1版本
pod 'JYCarousel', '>0.0.1' //使用高于0.0.1的版本
pod 'JYCarousel', '>=0.0.1' //使用大于或等于0.0.1的版本
pod 'JYCarousel', '<0.0.2' //使用小于0.0.2的版本
pod 'JYCarousel', '<=0.0.2' //使用小于或等于0.0.2的版本
pod 'JYCarousel', '~>0.0.1' //使用大于等于0.0.1但小于0.1的版本眷茁,相當(dāng)于>=0.0.1&&<0.1
pod 'JYCarousel', '~>0.1' //使用大于等于0.1但小于1.0的版本
pod 'JYCarousel', '~>0' //高于0的版本,寫這個(gè)限制和什么都不寫是一個(gè)效果纵诞,都表示使用最新版本
可能遇到的錯(cuò)誤提示及解決方法
錯(cuò)誤一
error: RPC failed; curl 92 HTTP/2 stream 0 was not closed cleanly: CANCEL (err 8)
fatal: the remote end hung up unexpectedly
將http.postBuffer設(shè)置的盡量大,例如
git config --global http.postBuffer 524288000
錯(cuò)誤二
error: RPC failed; curl 16 Error in the HTTP2 framing layer
fatal: expected flush after ref listing
直接換掉Git的http版本
git config --flobal http.version HTTP/1.1
錯(cuò)誤三
[!] CocoaPods could not find compatible versions for pod "ZLPhotoBrowser":
In snapshot (Podfile.lock):
ZLPhotoBrowser (= 4.1.9)
In Podfile:
ZLPhotoBrowser
image_pickers (from `../hmc_flutter_module/.ios/.symlinks/plugins/image_pickers/ios`) was resolved to 0.0.1, which depends on
ZLPhotoBrowser (~> 4.3.9)
You have either:
* out-of-date source repos which you can update with `pod repo update` or with `pod install --repo-update`.
* changed the constraints of dependency `ZLPhotoBrowser` inside your development pod `image_pickers`.
You should run `pod update ZLPhotoBrowser` to apply changes you've made.
作者的開源庫的ZLPhotoBrowser.podspec文件中關(guān)于deployment_target 配置寫的10.0,
s,ios.deployment_target = '10.0'
解決辦法:直接把自己項(xiàng)目的podfile中的版本改成10.0培遵,跟開源庫要求的最低系統(tǒng)版本一直浙芙,就可以了