CocoaPods 最新版安装

一、简介

什么是CocoaPods

CocoaPods是OS X和iOS下一个第三类库管理工具,通过CocoaPods工具我们可以为项目添加被称为“Pods”的依赖库(这些类库必须是CocoaPods本身所支持的),并且可以轻松管理其版本。

cocoaPods的好处

1,在引入第三方库时它可以自动为我们完成各种各样的配置,包括配置编辑阶段,连接器选项,甚至是ARC环境下的-fno-objc-arc配置等。

2,使用CocoaPods可以很方便地查找新的第三方库,这些类库是比较“标准的”,而不是网上随便找到的,这样可以让我们找到真正好用的类库。

二,Cocoapods安装步骤

注意:在终端输入命令时,取$后面部分输入

1,升级Ruby环境

终端输入:$ gem update --system

sudo gem update -n /usr/local/bin --system

此时会出现

没有权限升级Ruby的提示

这是因为你没有权限去升级Ruby

这个应该输入:$ sudo gem update --system

此时会出现

输入密码

接下来输入密码,注意:输入密码的时候没有任何反应,光标也不会移动,你尽管输入就是了,输完了直接回车。

等一会如果出现

升级Ruby成功

恭喜你,升级Ruby成功了。

查看Ruby版本:

ruby -v

如果出现SSL一下问题

则请修改~/.gemrc文件,增加ssl_verify_mode: 0配置,以便于 RubyGems 可以忽略 SSL 证书错误。vi ~/.gemrc

这样的话就好了


2,更换Ruby镜像

输入宝石来源-l来查看当前镜像

终端输入:$ gem sources -l

如果结果是

***当前来源***

https://gems.ruby-china.org/


首先移除现有的Ruby镜像

终端输入:$ gem sources --remove https://rubygems.org/

然后添加国内最新镜像源(淘宝的Ruby镜像已经不更新了)

终端输入:$ gem source -a https://gems.ruby-china.com


执行完毕之后用查看命令查看说明添加成功,否则继续执行$ gem source -a https://xx/来添加 最初是https://gems.ruby-china.org/


Error fetching https://gems.ruby-china.org/:

bad response Not Found 404 (https://gems.ruby-china.org/specs.4.8.gz)

这样错误是域名又换了 !请访问最新网址查看之后更换

3,安装CocoaPods

接下来开始安装

终端输入:$ sudo gem install cocoapods

#mac osx 10.11 之后

$ sudo gem install -n /usr/local/bin cocoapods --pre //安装最新版本

$ sudo gem install -n /usr/local/bin cocoapods -v //安装指定的 version

终端输入:$ sudo gem install -n /usr/local/bin cocoapods

安装成功如下:

安装成功

到这之后再执行pod setup(PS:这个过程是漫长的,要有耐心)

终端输入:$ pod setup

然后你会看到出现了设置CocoaPods master repo,卡住不动了,说明Cocoapods在将它的信息下载到〜/ .cocoapods里。

你可以命令+ n新建一个终端窗口,执行cd〜/ .cocoapods /进入到该文件夹下,然后执行du -sh *来查看文件大小,每隔几分钟查看一次,这个目录最终大小是900多M (我的是930M)

当出现安装完成的时候说明已经完成了。

如果没有成功出现这个错误❌

出现这个时候可以直接 pod  search AFNetworking

之后安装成功后 也就终于安装完成了,那么到底能不能用呢?咱们接着往下看!

注意:以上所有的步骤都是为这台电脑配置CocoaPods环境,以下才是真正的把CocoaPods安装到你的工程里面。

4,CocoaPods的使用

1,首先我们来搜索一下三方库

终端输入:$ pod  search AFNetworking

这时有可能出现

搜索不到的提示

这是因为之前pod搜索的时候生成了缓存文件search_index.json

执行rm ~/Library/Caches/CocoaPods/search_index.json来删除该文件

然后再次输入pod搜索AFNetworking进行搜索

这时会提示为spec repo'master'创建搜索索引

等待一会将会出现搜索结果如下:

AFNetworking搜索结果

出现这个了就说明搜索成功了,看一下上图中的这一句:

pod 'AFNetworking','〜> 3.1.0'

这句话一会我们要用到,这是CocoaPods添加三方库的关键字段

2,在工程中创建一个Podfile文件

要想在你的工程中创建Podfile文件,必须先要进到该工程目录下

终端输入:$ cd / Users / xxx / Desktop / CocoaPodsTest

进来之后就创建

终端输入:$ touch Podfile

然后你在你的工程目录下可以看到多了一个Podfile文件

3,编辑你想导入的第三方库的名称及版本

使用vim编辑Podfile文件

终端输入:$ vim Podfile

进入如下界面

编辑Podfile文件

进来之后紧接着按键盘上的英文'我'键

下面的“Podsfile”0L,0C将变成 - INSERT -

然后就可以编辑文字了,输入以下文字

平台:ios,'7.0'target'MyApp'ododod“AFNetworking”,“〜> 3.1.0”结束

解释一下,“MyApp”就是你自己的工程名字,平台:ios,'7.0'代表当前AFNetworking支持的iOS最低版本是iOS 7.0,'〜3.1.0'代表要下载的AFNetworking版本是3.1.0及以上版本

编完完后成如下样子:

编辑完成

这时退出去了,怎么退出去呢?跟着我做,先按左上角的esc键,再按:键,再输入wq!,点击回车,就保存并退出去了。

这个时候,你会发现你的项目目录中名字为Podfile的文件的内容就是你刚刚输入的内容。

4,把该库下载到Xcode中

终端输入:$ pod install

#mac osx 10.11 之后

pod install --verbose --no-repo-update    

这就开始下载了,需要一段时间,出现如下界面就说明安装好了

安装成功

这个时候关闭所有的Xcode窗口,再次打开工程目录会看到多了一个后缀名为.xcworkspace文件。

工程目录

以后打开工程就双击这个文件打开了,而不再是打开.xcodeproj文件。

进入工程后引入头文件不再是#import“AFNetworking.h”,而是#import

一些常用命令

导入第三方库

pod update(比较慢)

或者pod install

或者pod update --no-repo-update

--verbose是打印详细信息.

master的

pod repo remove master

pod repo add master http://git.oschina.net/akuandev/Specs.git

pod repo update


根据提示,跑一下

pod repo update --verbose

升级pod gem版本 sudo gem update cocoapods

查看装了那些 gem list --local | grep cocoapods

全部卸掉 sudo gem uninstall cocoapods

再安装sudo gem install cocoapods

清除缓存 重装

sudo rm -fr ~/Library/Caches/CocoaPods/

sudo rm -fr ~/.cocoapods/repos/master

pod setup


pod 目录 清空 

sudo rm -fr Pods/

sudo gem install -n /usr/local/bin cocoapods

pod setup

这条指令会告诉你Cocoapods组件装在哪里 :

which pod

手动移除这个组件 :

sudo rm -rf 路径

查看gems中本地程序包

gem list

移除程序包

sudo gem uninstall cocoapods -v 要移除的版本号

安装指定版本的Cocoapods

sudo gem install cocoapods -v 要安装的版本号

sudo gem install -n /usr/local/bin cocoapods --pre //安装最新版本

项目 pod 的更新

pod update --no-repo-update


终端走代理:

export http_proxy=http://proxyAddress:port

Example:export http_proxy=http://127.0.0.1:1087


报错error: RPC failed; curl 92 HTTP/2 stream 0 was not closed cleanly: PROTOCOL_ERROR (err 1)

换掉Git的http版本

git config --global http.version HTTP/1.1

curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused error

说是Github的raw文件读取地址遭受DNS污染 或者Command line tool问题(我确信Command line tool没问题)

卸载旧的

rm -rf /Library/Developer/CommandLineTools

安装新的

xcode-select --install

所以 vim修改hosts

修改hosts

macOS直接在终端输入:sudo vi /etc/hosts

199.232.68.133 raw.githubusercontent.com

brew link --overwrite cocoapods

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 78,137评论 1 170
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 26,375评论 1 143
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 29,583评论 0 102
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 16,355评论 0 87
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 21,613评论 0 144
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 17,764评论 0 87
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 10,551评论 2 161
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 9,972评论 0 78
  • 想象着我的养父在大火中拼命挣扎,窒息,最后皮肤化为焦炭。我心中就已经是抑制不住地欢快,这就叫做以其人之道,还治其人...
    爱写小说的胖达阅读 8,500评论 5 111
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 11,772评论 0 129
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 10,516评论 1 124
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 11,318评论 0 127
  • 白月光回国,霸总把我这个替身辞退。还一脸阴沉的警告我。[不要出现在思思面前, 不然我有一百种方法让你生不如死。]我...
    爱写小说的胖达阅读 6,173评论 0 17
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 8,970评论 2 114
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 12,061评论 3 123
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 7,807评论 0 3
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 8,027评论 0 76
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 12,507评论 2 133
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 13,157评论 2 130

推荐阅读更多精彩内容

  • CocoaPods 是什么? CocoaPods 是一个负责管理 iOS 项目中第三方开源库的工具。CocoaPo...
    朝洋阅读 25,199评论 3 51
  • 项目组件化、平台化是技术公司的共同目标,越来越多的技术公司推崇使用pod管理第三方库以及私有组件,一方面使项目架构...
    swu_luo阅读 19,748评论 0 39
  • 2017年8月10日 晴 和往常一样,看着热舞的大妈,听着嘈杂的音乐,穿过了小广场,开始夜跑。 步行2圈,跑步14...
    杨锦华阅读 139评论 0 0
  • 1、儿子好可爱,很快就可以回去抱你啦~ 2、看了一集西部世界,跟最近看的书超级智能有点像额
    小个盒子阅读 551评论 0 50
  • 中国流行中庸思想,即太极八卦图,黑中有白,白有黑,矛盾的对立面未必是坏的,事物本是这样,没有绝对的对错好坏,所以,...
    我不是书生阅读 262评论 0 1