CocoaPods安装方法
写在前面的话:
在执行下面的任何步骤中遇到 中断、进度缓慢、各种失败等问题时,
请严格遵守以下原则:
1、重试、重试、重试,没准多试几次就好了呢; 2、切换为手机移动网络(已验证过多次,可行); 3、上述方法不行的话那就走上网的通道吧,注意切换成全局模式(建议放最后试吧,反正我没试过,都是听别人说的); 4、还是失败那就等等,在凌晨左右的时候会好很多(已验证过多次,可行); 5、到这里还是不行,那就就得考虑下自己的人品问题了;
其它问题,别说,别问,别喳喳,去找百度或者谷歌,它们懂得多!!!
———-———-———-———-———-———-———-———-
正文
自己装过很多次CocoaPod,中间遇到过各种烦人的问题,也促使自己在不断的摸索中学习到了很多,总结一下,供大家学习研究,以下过程经本人新机测试,一路畅通无任何错误(请严格按照下述方法来做),中间有网络不好的可能会下载中断出错,只要从新执行一下命令就行了.
CocoaPods简介:
CocoaPods是一个用Ruby写的、负责管理iOS项目中第三方开源库的工具,CocoaPods能让我们集中的、统一管理第三方开源库,为我们节省设置和更新第三方开源库的时间。
CocoaPods安装:
下面就正式开始安装CocoaPods,命令中间可能有空格看不出来,建议直接复制粘贴执行;
因为Mac电脑自带Ruby环境,我们就只需打开终端开始动手。然而又因为默认情况下我们mac系统自带的Ruby环境版本比较低(大概是2.0.0或者其他较高版本),但是现在安装CocoaPods需要2.2.2版本及以上的,所以我们不管三七二十一先直接先升级ruby。
打开终端:>_
1、查看当前Ruby版本
ruby -v
2、升级Ruby环境,首先需要安装rvm(第一步要下载一些东西等两分钟左右)
curl -L get.rvm.io | bash -s stable source ~/.bashrc source ~/.bash_profile
3、查看rvm版本
rvm -v
显示如下(或者是其他版本)
rvm 1.29.3 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io]
4、列出ruby可安装的版本信息
rvm list known
显示如下
# 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[.10] [ruby-]2.2[.10] [ruby-]2.3[.7] [ruby-]2.4[.4] [ruby-]2.5[.1] ..... [ruby-]2.6[.3] // 重点在这里 重点在这里 重点在这里 [ruby-]2.7[.0-preview1] // 测试版 ruby-head .....
5、安装一个ruby版本(这里我选择的是2.5.1版本,当然你也可以选择其他的)
rvm install 2.6.3 // 注意:安装过程中需要两次按下 Enter 键, 第二次按下后需要输入电脑访问密码(不可见,只管输入就行); // 如果你电脑没有安装Xcode和Command Line Tools for Xcode以及Homebrew 会自动下载安装,建议提前安装这三者.
这里很多小伙伴会遇到错误,大部分是因为没有安装Homebrew造成,所以所以所以要提前安装比较好
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
6、设置为默认版本
rvm use 2.6.3 --default
7、更换源
sudo gem update --system gem sources --remove https://rubygems.org/ gem sources --add https://gems.ruby-china.com/
8、为了验证你的Ruby镜像是并且仅是ruby-china,执行以下命令查看
gem sources -l
如果是以下结果说明正确,如果有其他的请自行百度解决
*** CURRENT SOURCES *** https://gems.ruby-china.com/
9、这时候才正式开始安装CocoaPods
sudo gem install -n /usr/local/bin cocoapods
10、如果安装了多个Xcode使用下面的命令选择(一般需要选择最近的Xcode版本)
sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
11、安装本地库
pod setup
12、执行以上命令后
Setting up CocoaPods master repo $ /usr/bin/git clone https://github.com/CocoaPods/Specs.git master --progress Cloning into \'master\'... remote: Counting objects: 1879515, done. remote: Compressing objects: 100% (321/321), done. Receiving objects: 21% (404525/1879515), 73.70 MiB | 22.00 KiB/
然后就是漫长的等待,当然,网络好的情况下会更快
重点来了,注意
最新版的MacOS Catalina系统命令行执行pod setup命令直接结束啦;
莫着急,我们手动安装本地库,速度绝对快
命令行执行以下操作
git clone https://github.com/CocoaPods/Specs.git ~/.cocoapods/repos/trunk 注意: 注意: 注意: 重要的事情要重申: 使用这个命令执行等待一段时间之后大有可能会失败, 原因基本是网络问题, 请不要着急, 根据自己和小伙伴的多次测试, 只有在使用移动手机网络或者在凌晨的时候网速才会理想 (大概几分钟就OK,其他情况下即使你的网络带宽很好也没用) 如果你晚上熬不住,早上起不来,手机流量又没了,那就往下看吧!哎。。。。。。。
或者使用下面的,国内镜像,速度刚刚的
git clone https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git ~/.cocoapods/repos/trunk
目录结构见下图,如果不是就自己手动移动一下
如果还不行
// 安装最新版cocoapods sudo gem install cocoapods --pre // 移除本地master sudo rm -fr ~/.cocoapods/repos/master // 移除本地缓存 sudo rm -fr ~/Library/Caches/CocoaPods/ // 重新setup,如果很慢可使用问题1的解决方法(git clone) pod setup --verbose // 移除trunk pod repo remove trunk
可以参考:CocoaPods|安装流程与使用(macOS-Mojave)
以下一段忽略,直接看 第13步:
要查看文件下载进度的可以另外打开一个终端窗口(快捷键:选中终端按下Command+N组合键),输入以下两行命令回车执行
cd ~/.cocoapods
du -sh *
执行du -sh *之后会显示已下载的文件大小,可以多次执行来监看下载进度,如果之前还有文件大小,后来变成0了,可能是网络问题,下载已经中断了,需要结束命令并从新执行 pod setup
13、下载安装完成之后可执行下列命令检查是否可用(第一次使用可能要等一会)
pod search AFNetworking
14、CocoaPods的具体使用
新建一个Xcode工程,使用终端cd到工程目录下
创建Podfile文件:
pod init
之后就可以在项目目录里看到一个Podfile文件
打开Podfile文件:
open Podfile
添加:
pod \'AFNetworking\'
保存后退出
开始下载:
pod install
我这里第一次都会出错,只要再次(看人品)执行就好了,可能是网或者其他的原因。
其他;
安装
$ pod install
升级 (推荐用update,其中update就包含了install)
$ pod update
如果update 或 install 卡住了,可以用下面两个命令替代(前提是你已经把第三方库下载下来了)
$ pod install --verbose --no-repo-update
$ pod update --verbose --no-repo-update
Podfile 参考文件(cocoapods 1.0.1版本, 注意:0.3.9版本文件不一样)
source \'https://github.com/CocoaPods/Specs.git\' platform :ios, \'7.0\' target \'07-cocoapods演示\' do pod \'AFNetworking\', \'~> 3.0.4\' end