最新的CocoaPods安装使用教程-2019-03-01

2019.03.01最新的CocoaPods安装方法

本教程来自对网络分享内容的整理及补充。

自己装过很多次CocoaPod,中间遇到过各种烦人的问题,也促使自己在不断的摸索中学习到了很多,总结一下,供大家学习研究,以下过程经本人新机测试,一路畅通无任何错误(请严格按照下述方法来做),中间有网络不好的可能会下载中断出错,只要从新执行一下命令就行了。

CocoaPods简介:

CocoaPods是一个用Ruby写的、负责管理iOS项目中第三方开源库的工具,CocoaPods能让我们集中的、统一管理第三方开源库,为我们节省设置和更新第三方开源库的时间。

CocoaPods安装原料:

本次安装使用:

由于Xcode自带命令行工具Command_Line_Tools,所以需要先安装好Xcode,然后进行下面的安装。

其它版本的安装也可参考此教程。

CocoaPods安装:

下面就正式开始安装CocoaPods,命令中间可能有空格看不出来,建议直接复制粘贴执行。

因为Mac电脑自带Ruby环境,我们就只需打开终端开始动手。

然而又因为默认情况下我们mac系统自带的Ruby环境版本比较低(大概是2.0.0或者其他较高版本),但是现在安装CocoaPods需要2.2.2版本及以上的,所以我们不管三七二十一先直接先升级ruby。

打开终端

image

1、查看当前Ruby版本

ruby -v

显示如下信息:

ruby 2.3.7p456 (2018-03-28 revision 63024) [universal.x86_64-darwin17]

2、升级Ruby环境,首先需要安装rvm(第一步要下载一些东西等两分钟左右)

curl -L get.rvm.io | bash -s stable

source ~/.bashrc

source ~/.bash_profile

显示如下信息:

192:~ mac$ curl -L get.rvm.io | bash -s stable
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   194  100   194    0     0     85      0  0:00:02  0:00:02 --:--:--    85
100 24173  100 24173    0     0   7562      0  0:00:03  0:00:03 --:--:-- 34731
Downloading https://github.com/rvm/rvm/archive/1.29.7.tar.gz
Downloading https://github.com/rvm/rvm/releases/download/1.29.7/1.29.7.tar.gz.asc

// 这里会停留两分钟左右,与网速有关。
……

192:~ mac$ 
192:~ mac$ source ~/.bashrc
192:~ mac$ 
192:~ mac$ source ~/.bash_profile


3、查看rvm版本

rvm -v

显示如下信息(版本号也可能是其它):

rvm 1.29.7 (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[.8]
[ruby-]2.4[.5]
[ruby-]2.5[.3]      // ^_^ 重点在这里 重点在这里 重点在这里
                    // 建议不要选择安装最新版或者测试版。
                    // 建议安装最新版本的上一个稳定版。
[ruby-]2.6[.0]
ruby-head

# for forks use: rvm install ruby-head-<name> --url https://github.com/github/ruby.git --branch 2.2
……

// 测试版举例:
// [ruby-]2.6[.0-preview2]   // 测试版

5、安装一个ruby版本(这里我选择的是2.5.3版本,当然你也可以选择其它的)

安装准备:

如果你电脑没有安装

  • Xcode
  • Command Line Tools for Xcode
  • Homebrew

会自动下载安装,建议提前安装这三者。

安装Homebrew(可跳过此步骤,但不建议这样做):

  • 如果没有安装Homebrew,安装一个ruby版本会等待相当长的时间(我等了约30分钟)。

  • 安装一个ruby版本,这里很多小伙伴会遇到错误,大部分是因为没有安装Homebrew造成,所以所以所以要提前安装比较好

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

开始安装ruby:

rvm install 2.5.3
// 注意:安装过程中需要两次按下 Enter 键,
// 第二次按下后,需要输入电脑访问密码(不可见,只管输入就行);

显示如下信息:

Searching for binary rubies, this might take some time.
No binary rubies available for: osx/10.13/x86_64/ruby-2.5.3.
Continuing with compilation. Please read 'rvm help mount' to get more information on binary rubies.
Checking requirements for osx.
About to install Homebrew, press `Enter` for default installation in `/usr/local`,
type new path if you wish custom Homebrew installation (the path needs to be writable for user)
: 

// 翻译:
// 安装自制程序时,在“/usr/local”中按“Enter”键默认安装,
// 如果希望自定义自制酿酒安装,请键入新路径(该路径需要为用户可写)
// :

// --> 此时需要按下enter键。



Press RETURN to continue or any other key to abort
// 翻译:
// 按回车继续或任何其他键中止

// --> 此时需要按下enter键。

Password:      
// --> 此处需要输入密码,密码不可见。然后按下enter键。

按下回车后,显示如下信息(如果已经安装过Homebrew,请忽略此步):

==> Downloading and installing Homebrew...
remote: Enumerating objects: 119566, done.
Receiving objects:  32% (38266/119566), 11.76 MiB | 10.00 KiB/s    

// 会在这里停留一段时间,时长与网速有关(我等了约30分钟)。
// 下载和安装Homebrew(自制程序)。

安装完成,显示如下信息:

ruby-2.5.3 - #generating default wrappers.......
ruby-2.5.3 - #adjusting #shebangs for (gem irb erb ri rdoc testrb rake).
Install of ruby-2.5.3 - #complete 
Ruby was built without documentation, to build it run: rvm docs generate-ri


// 翻译
// 安装ruby-2.5.3 - #完成
// Ruby是在没有文档的情况下构建的,构建它需要运行:rvm文档生成-ri

6、设置为默认版本

  • 这里我选择的是2.5.3版本。
rvm use 2.5.3 --default

7、更换源

  • 执行完sudo gem update --system命令后,需要输入电脑访问密码(不可见,只管输入就行),然后按下enter键。

  • 等待几分钟,更新rubygems。

sudo gem update --system

gem sources --remove https://rubygems.org/

gem sources --add https://gems.ruby-china.com/

安装完成,显示如下信息:

------------------------------------------------------------------------------

RubyGems installed the following executables:
  /Users/mac/.rvm/rubies/ruby-2.5.3/bin/gem
  /Users/mac/.rvm/rubies/ruby-2.5.3/bin/bundle

Ruby Interactive (ri) documentation was installed. ri is kind of like man 
pages for Ruby libraries. You may access it like this:
  ri Classname
  ri Classname.class_method
  ri Classname#instance_method
If you do not wish to install this documentation in the future, use the
--no-document flag, or set it as the default in your ~/.gemrc file. See
'gem help env' for details.

RubyGems system software updated

// 翻译
// RubyGems系统软件更新

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版本)

  • 只安装一个Xcode请跳过此步。
sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer

// 此处没有测试,有问题请自行百度。

11、安装本地库(推荐此方法)

  • 安装需要一段时间
pod setup

// 这条命令是将Github上的开源库都托管都安装Podspec索引安装到到本地

执行以上命令后,显示如下信息:

Setting up CocoaPods master repo
  $ /usr/bin/git clone https://github.com/CocoaPods/Specs.git master --progress
  Cloning into 'master'...
  remote: Enumerating objects: 309, done.        
  remote: Counting objects: 100% (309/309), done.        
  remote: Compressing objects: 100% (235/235), done.        
  Receiving objects:   1% (34273/2858013), 6.82 MiB | 35.00 KiB/s     
  • 然后就是漫长的等待(可能需要2个小时,还不一定成功),网络好的情况下会更快。

安装成功后,显示如下信息:

pod setup


Setting up CocoaPods master repo
  $ /usr/bin/git clone https://github.com/CocoaPods/Specs.git master --progress
  Cloning into 'master'...
  remote: Enumerating objects: 147, done.        
  remote: Counting objects: 100% (147/147), done.        
  remote: Compressing objects: 100% (137/137), done.        
  remote: Total 2859393 (delta 43), reused 3 (delta 3), pack-reused 2859246        
  Receiving objects: 100% (2859393/2859393), 618.83 MiB | 54.00 KiB/s, done.
  Resolving deltas: 100% (1703063/1703063), done.
  Checking out files: 100% (308708/308708), done.

CocoaPods 1.7.0.beta.1 is available.
To update use: `sudo gem install cocoapods --pre`
[!] This is a test version we'd love you to try.

For more information, see https://blog.cocoapods.org and the CHANGELOG for this version at https://github.com/CocoaPods/CocoaPods/releases/tag/1.7.0.beta.1

Setup completed



如果不想等待,可以这样处理。

不推荐新手使用下面的方法安装。

1)方法一

CocoaPods跳过pod setup快速安装教程

大约要下载200M的文件,偏偏下载速度出奇的慢。

本人保持在30K/S,大约2个小时,关键是没有任何进度条显示,就这样傻乎乎的,卡死在这里都不知道。

注意!

一句 pod setup 卡你2个小时,前提还是你安装没有错。如果错误,又要重新2小时。怎么能如此浪费时间呢?

前面说了,pod setup 这条命令是将Github上的开源库的Podspec索引,安装到到本地。简单说就是下载一个包,到本地,也就是master文件夹,如下图。

image

如果你同事电脑上有安装好,你其实可以从你同事电脑上拷贝过来,直接放到该路径就OK了。

如果你身边没有装好的CocoaPods的朋友,可以访问这个链接

https://github.com/CocoaPods/Specs

(github所有的第三方开源库的Podspec文件都托管在这里,这也是你pod setup所要下载的)。

选择Download ZIP,用你的浏览器或者迅雷什么的,什么下载快用什么。目前压缩包约为300M。

解压后,参照路径放置解压后的文件夹。 将master文件夹,放在 ~/.cocoapods/repos 路径即可。

~/.cocoapods/repos 这个路径是在执行 pod setup生成的。所以电脑无法前往此路径时,建议先 pod setup 下,然后关闭掉即可生成路径。

还有就是挂个VPN,下载会很快。


2)方法二

解决Cocoapods贼慢问题

https://www.jianshu.com/p/f024ca2267e3

使用SPECS 中国镜像站

http://cocoapodscn.com/

测试过此方法,但是失败了,原因未知。

使用方法

  • 方法一
pod repo remove master

pod repo add master git://cocoapodscn.com/Specs.git
  • 方法二
git clone git://cocoapodscn.com/Specs.git ~/.cocoapods/repos/master

pod setup
  • 方法二在 pod setup 处失败了,失败信息为:
Updating spec repo `master`
Performing a deep fetch of the `master` specs repo to improve future performance
[!] /usr/bin/git -C /Users/mac/.cocoapods/repos/master fetch --unshallow

error: RPC failed; curl 18 transfer closed with outstanding read data remaining
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed

试了一些网上的方法,但都失败了。


12、查看文件下载进度(此步骤可忽略,直接看下一步。)

  • 查看文件下载进度,可以另外打开一个终端窗口(快捷键:选中终端按下Command+N组合键),输入以下两行命令,回车执行。
cd ~/.cocoapods

du -sh *
  • 执行du -sh *之后,会显示已下载文件的大小,可以多次执行来监看下载进度。
  • 如果之前还有文件大小,后来变成0了,可能是网络问题,下载已经中断了,需要结束命令并从新执行 pod setup。

13、下载安装完成之后可执行下列命令检查是否可用(第一次使用可能要等一会)

pod search AFNetworking

14、CocoaPods的具体使用

  • 新建一个Xcode工程
  • 使用终端cd到工程目录下
  • 创建Podfile文件:
pod init
  • 执行pod init之后,就可以在项目目录里看到一个Podfile文件。
  • 打开Podfile文件:
open Podfile
  • 添加第三方框架:
pod 'AFNetworking'
  • 保存后退出
  • 开始安装三方开源库:
pod install
  • 如果安装失败,再执行一次就好了,可能是网络或者其他的原因。

到此 Perfect Success !

链接

详细的CocoaPods使用总结

https://www.jianshu.com/p/7d0ad4cde012

参考文献:

CocoaPods安装方法

CocoaPods使用总结

Homebrew介绍和使用

各种版本xcode下载

CocoaPods最新安装及跳过pod setup快速安装教程

解决Cocoapods贼慢问题

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 160,108评论 4 364
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,699评论 1 296
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,812评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,236评论 0 213
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,583评论 3 288
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,739评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,957评论 2 315
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,704评论 0 204
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,447评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,643评论 2 249
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,133评论 1 261
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,486评论 3 256
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,151评论 3 238
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,108评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,889评论 0 197
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,782评论 2 277
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,681评论 2 272

推荐阅读更多精彩内容