2020更新后的最新cocoapods安裝
方法一:
第一步:安裝RVM
rvm可以讓你安裝多個(gè)ruby,并且進(jìn)行多個(gè)版本之間隨意切換
%? curl -L get.rvm.io | bash -s stable ?但是目前直接使用如果不能科學(xué)上網(wǎng)的話(會(huì)報(bào)錯(cuò)curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused或者curl: (35) LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to raw.githubusercontent.com:443?)
因此在網(wǎng)上找到大佬的執(zhí)行方法 一句命令解決國(guó)內(nèi)鏡像問題:?/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)" ?
按照提示執(zhí)行clone就可以,親測(cè)可以使用;
然后再使用
%? curl -L get.rvm.io | bash -s stable
% ?source ~/.bashrc
% source ~/.bash_profile
//檢查RVM是否安裝成功
等待終端加載完畢后輸rvm -v查看,如顯示
rvm 1.29.10 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io]
表示安裝成功,我們進(jìn)下一步
第二步:升級(jí)Ruby
#查看當(dāng)前ruby版本
% ruby?-v
#列出已知的ruby版本
%?rvm?list?known
#安裝ruby?2.6.5(注:2019年以后的mac更新以后最好把ruby升級(jí)到2.4.0版本以上,新版電腦默認(rèn)的都在2.6.0以后版本)
%?rvm?install?2.6.5 (如果默認(rèn)大于2.4.0,可以不進(jìn)行更新)
安裝完成后,繼續(xù)查看當(dāng)前ruby版本
%?ruby?–v
若版本變?yōu)?.6.5則完成,若還是原來的版本,則執(zhí)行以下命令設(shè)置默認(rèn)的ruby版本
% rvm use2.6.5--default
執(zhí)行完畢繼續(xù)查看版本,則發(fā)下ruby版本變?yōu)?.6.5。表示ruby的升級(jí)完成,進(jìn)行下一步;
第三步:安裝cocoapods
首先,檢查ruby源:
% gem sources –l
默認(rèn)情況下,返回的信息:
*** CURRENT SOURCES ***
https://rubygems.org/
當(dāng)然這個(gè)源在墻內(nèi)是訪問不到的。因此我們需要尋找一個(gè)可以在國(guó)內(nèi)訪問到的鏡像。目前筆者找到的是http://rubygems-china.oss.aliyuncs.com和https://ruby.taobao.org/這個(gè)阿里云的鏡像,當(dāng)然隨著時(shí)間的推移,taobao Gems 已停止維護(hù),現(xiàn)在有ruby-china提供鏡像服務(wù),如果安裝了則刪除,現(xiàn)在就要開始修改ruby源了;
首先執(zhí)行以下命令來刪除原始的ruby源
% gem sources --remove https://rubygems.org/
執(zhí)行完成后可以在終端顯示以下信息:
https://rubygems.org/ removed from sources
然后添加目前國(guó)內(nèi)比較好用的淘寶鏡像源:
% gem sources-a https://gems.ruby-china.com
完成以繼續(xù)查看當(dāng)前的鏡像源
% gem sources –l
只有在終端中出現(xiàn)下面文字才表明你上面的命令是成功的:
***CURRENT SOURCES ***
https://gems.ruby-china.com
淘寶源替換完成,?接下來我們進(jìn)行設(shè)置gem的版本
更新升級(jí)Gem版本
Gem是管理Ruby庫(kù)和程序的標(biāo)準(zhǔn)包,如果它的版本過低也可能導(dǎo)致安裝失敗,解決方案升級(jí)Gem。
如果gem太老,可以嘗試用如下命令升級(jí)gem:
在終端輸入以下命令:
% ?sudo gem update --system
或者mac OS 10.11之后
% sudo gem update -n /usr/local/bin —system
完成以后我們進(jìn)行cocoapods的下載安裝,此處有兩種方法可以提供選擇:
// 如果之前有cocoapods則?
% sudo gem uninstall cocoapods(移除原來的cocoapods)
然后進(jìn)行安裝,方法①:
若Mac系統(tǒng):(OS X 10.11以前)及之前執(zhí)行:
% sudo gem install cocoapods
若Mac系統(tǒng):安裝CocoaPods(10.11后蘋果升級(jí)了安全策略)及之后則執(zhí)行
%?sudo gem install-n/usr/local/bin cocoapods
當(dāng)出現(xiàn)32 gems installed,則cocoapods更新完畢
(注:若安裝多個(gè)版本的Xcode則要選擇對(duì)應(yīng)的正確的路徑)
% sudo xcode-select-switch/Applications/Xcode.app/Contents/Developer ?(一般選擇的就是你最近安裝使用的Xcode版本)
接下來就是進(jìn)行安裝本地庫(kù)
% ?pod setup
很快就出現(xiàn)?Setup completed, 表示本地庫(kù)安裝完成
網(wǎng)上找了很多說要各種clone各種操作,最后還是一對(duì)問題,而此時(shí)我們不要搞那么多花里胡哨的東西,直接Xcode新建一個(gè)項(xiàng)目,此處我就以TestCocoapods測(cè)試項(xiàng)目為例:
首先我們cd 進(jìn)項(xiàng)目
% cd /Users/用戶名/Desktop/TestCocoapods
% touch podfile
% open podfile 正常來說我們最好設(shè)置打開podfile的方式用Xcode方式
重點(diǎn)來了,復(fù)制下面到podfile里面
# Uncomment the next line to define a global platform for your project
?platform :ios, '11.0'
source 'https://github.com/CocoaPods/Specs.git'
target 'TestCocoapods' do
? # Uncomment the next line if you're using Swift or would like to use dynamic frameworks
? use_frameworks!
? pod 'AFNetworking', '~> 3.0'
? pod 'MJRefresh'
? pod 'SDWebImage', '~> 4.0'
end
然后就直接開始
%?pod install --verbose --no-repo-update ? ?接下來就是漫長(zhǎng)的等待過程
(注:由于cocoapods的版本更新和升級(jí)。Cocoapods的大小由原來的300M變?yōu)楝F(xiàn)在的800M,因此這個(gè)安裝過程會(huì)很耗時(shí)間,同意需要好的網(wǎng)絡(luò)環(huán)境去安裝,不然很容易報(bào)curl56這個(gè)錯(cuò)誤,本人在教育網(wǎng)的環(huán)境下下載安裝將近一個(gè)半個(gè)小時(shí)或者使用手機(jī)4G網(wǎng)絡(luò)去下載一個(gè)小時(shí)左右)
安裝過程中我們可以按command+N新建一個(gè)終端頁(yè)面進(jìn)行查看下載進(jìn)度
在新建的終端輸入 :% cd ~/.cocoapods
然后輸入% du –sh
查看下載進(jìn)度。若長(zhǎng)時(shí)間下載數(shù)據(jù)不改變或者安裝失敗,我們先檢查網(wǎng)絡(luò)環(huán)境是否良好。然后重新執(zhí)行下面命令
$ pod repos remove cocopods
$?pod install --verbose --no-repo-update
然后等待下載安裝完成。
重點(diǎn)提示,后面的方法可以進(jìn)行選擇性使用
方法②:
首先是
$ sudo gem install -n /usr/local/bincocoapods
然后在桌面新建一個(gè)項(xiàng)目
在終端CD #項(xiàng)目的路徑
$ touch podfile
$open podfile
然后在podfile里面添加加需要更新的庫(kù),下面以AFN為例
#在打開的podfile里面輸入pod ‘AFNetworking’
然后關(guān)閉podfile,在終端繼續(xù)輸入一下命令
$pod install --verbose --no-repo-update
然后等到安裝完成以后再次更新其他的第三方庫(kù)就可以使用下面的命令進(jìn)行;
$pod update --verbose --no-repo-update
接下來就是等待安裝完成。
注:方法①安裝完成以后pod第三方庫(kù)會(huì)報(bào)錯(cuò)
方法二:
克隆法,首先在ruby環(huán)境和源配置好的情況下進(jìn)行克隆安裝。(注:rub環(huán)境和源的配置參考方法一進(jìn)行)
接下來我們打開終端首先通過終端cd到~/.cocoapods/repos下
然后輸入命令
$ git clone‘https://github.com/CocoaPods/Specs.git’master
然后就是漫長(zhǎng)的等待過程了。文件會(huì)根據(jù)網(wǎng)絡(luò)環(huán)境的狀況加載。
方法三:離線安裝方法
首先:直接登錄下載的Git地址,直接下載一個(gè)包下來
https://coding.net/u/hging/p/Specs/git
直接下載zip包,并解壓,我們要用的就是Specs文件夾,里面放著很多很多第三方依賴的配置文件(.json文件)
新建一個(gè)項(xiàng)目,CD到項(xiàng)目文件,然后pod install,這時(shí)候會(huì)發(fā)現(xiàn)卡死在git獲取這個(gè)界面,此時(shí)不要取消,在命令行cd ~/cocoapods/repos/進(jìn)入到這個(gè)目錄下,就會(huì)發(fā)現(xiàn)這里多了一個(gè)目錄。

這個(gè)目錄就是離線安裝目錄了,接下來你只要把第一步的Specs文件夾拷貝進(jìn)來

注:當(dāng)你取消pod install命令,會(huì)刪掉文件夾
接下來就是:
再次運(yùn)行項(xiàng)目的最好用下面這個(gè)命令
$pod install--verbose--no-repo-updatel,好了,基本上不成問題了,就會(huì)自動(dòng)導(dǎo)入第三包包了.
遇到問題的解決:
The dependency `AFNetworking (~> 3.0)`
is not used in any concrete target.錯(cuò)誤的解決方法
解決方式一:為將Podfile內(nèi)填寫格式改為如下:(TestThirdParty改為自己項(xiàng)目名)
platform:ios, '8.0'//支持的最低版本
target'test' do//test是自己的項(xiàng)目名稱
pod'AFNetworking', '~> 2.6'
//可以連續(xù)pod多個(gè)第三方
//
pod 'B','版本'...
end
解決方式二:打開Xcode,
選擇target(就是你左邊工程target(工程名 一般為深藍(lán)色那))———BuildSettings————search Paths下的User Header SearchPaths
然后雙擊后面的空白區(qū)域 輸入:“$(PODS_ROOT)”并且選擇recursive點(diǎn)回車就結(jié)束了 我們?cè)诠こ讨惺褂眠@些三方庫(kù)的時(shí)候就有提示了(有的時(shí)候我們的xcodel可能反應(yīng)不及時(shí),重啟一下試試)這步的步驟