进入正题前,先来点前奏:了解cocoapods是某天看一个博客,那时才明白原来写项目不用一个个将三方库拷进项目里啊,惊讶的我是一塌糊涂的啊。。。(原谅我那时还没进入过正规的IT公司....好多你们自然而然接触的东西,都需要我一点一点自己去接触。。。)所以啊,赶紧的扒资料啊,博客啊,各种关于cocoapods的文献啊,尝试着去安装一下,就一下。。。靠,失败了????再试试,还不行???接着扒资料,合并总结。。再去安装,,成了?激动啊,就想着纪念一下。。。那就写个博客吧,把其中遇到的艰辛都列出来,也希望能帮助和我一样摸索的人。。。

  好了,进入正题吧。。。。。。。。。。。。一步一步慢慢来!!!

1、什么是cocoapods 

  先说一下开发者在做项目时需要三方库怎么办?通常情况下是:先找到这个第三方库,下载下来;然后拉到自己的项目中去(拷贝到项目);最后在项目中自由的使用它!看起来很简单吧?不用怀疑,就是这么简单。但如果项目中需要的三方库很多呢?或者你使用的某个三方库有牵连到其他的类库呢,这样在下载、拷贝就变得十分麻烦。还有就是牵扯到项目中使用的三方库更新,也是个麻烦问题。那么现在就是使用Cocoapods的时候了。

  CocoaPods 是开发 OS X 和 iOS 应用程序的一个第三方库的依赖管理工具,也是最常用、最有名的类库管理工具。利用 CocoaPods,可以定义自己的依赖关系 (称作pods),并且随着时间的变化,以及在整个开发环境中对第三方库的版本管理非常方便。开发者通过Cocoapods,只需要一行命令就可以解决问题,并且目前为止,大部分开源类库,都是支持Cocoapods的。所以,学会使用Cocoapods吧 ,这是开发者的一大利器啊。

2、安装cocoapods

  打开mac终端,使用终端命令去安装cocoapods,步骤如下:

1>输入命令:

sudo gem install cocoapods (这是安装cocoapods的命令)。

 

苹果系统升级 OS X EL Capitan 后改为   ​$ sudo gem install -n /usr/local/bin cocoa pods

 cocoaPods是用Ruby实现的,要想使用它首先需要有Ruby的环境。幸运的是OS X系统默认的已经可以运行Ruby。-注:如果安装失败,就说明中国的威力依旧牛气啊。那么解决方式如下:

2>Ruby的默认源使用的是cocoapods.org,国内访问这个网址有时候会有问题,网上的一种解决方案是将远替换成淘宝的。

  方式如下:

  移除本来的Ruby路径:

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

  添加淘宝镜像:

$gem sources -a https://ruby.taobao.org

  好了,现在让我们检查一下,是否替换成功。接着输入:

gem sources -l

操作图如下:

3>现在一切就绪了,再执行步骤1 

 sudo gem install cocoapods。

就会安装成功。

  注:如果执行完这一步出现错误如下图的话:你使用的Mac系统是:OS X EI Capitan

  那么就是路径问题,OS X EI Capitan 直接把cocoapods干掉了(听说的,具体情况不知道。。想了解去自己去查吧),本人当时也是查了好久才找到解决方法. 原来苹果系统升级 OS X EL Capitan 后改为   ​$ sudo gem install -n /usr/local/bin cocoa pods

  好了,现在重新终端输入:sudo gem install -n /usr/local/bin cocoa pods,就可以安装cocoapods。安装效果如上图显示。

4>更新gem

  终端输入:

sudo gem update --system

 可以升级到最新版本,效果图如下:

5>最后终端输入:

pod setup

  pod setup之行后,终端会停留在 setting up cocoapods master repo 这个状态一段时间,是因为要进行下载安装,而且目录比较大,对于着急的人是个很大的耐心考验啊。。如果实在受不了漫长的等待的话,出去溜达溜达吧,回来就好了。。。如果你不的话,我在其他网站上看到这种方式:(本人是没试过,不过你可以试试看,成功的话,记得告诉一下。)这步其实是 Cocoapods 在将它的信息下载到 ~/.cocoapods目录下,如果你等太久,可以试着 cd 到那个目录,用du -sh *来查看下载进度。

 

以下引用iOS界:唐巧大神博客-- 关于《用CocoaPods做iOS程序的依赖管理》一文,需要的可以进去看看。

你也可以参考本文接下来的使用 cocoapods 的镜像索引一节的内容来提高下载速度。

3、使用 CocoaPods 的镜像索引

所有的项目的 Podspec 文件都托管在https://github.com/CocoaPods/Specs。第一次执行pod setup时,CocoaPods 会将这些podspec索引文件更新到本地的 ~/.cocoapods/目录下,这个索引文件比较大,有 80M 左右。所以第一次更新时非常慢,笔者就更新了将近 1 个小时才完成。

一个叫 akinliu 的朋友在 gitcafe 和 oschina 上建立了 CocoaPods 索引库的镜像,因为 gitcafe 和 oschina 都是国内的服务器,所以在执行索引更新操作时,会快很多。如下操作可以将 CocoaPods 设置成使用 gitcafe 镜像:

pod repo remove master
pod repo add master https://gitcafe.com/akuandev/Specs.git
pod repo update

将以上代码中的 https://gitcafe.com/akuandev/Specs.git 替换成http://git.oschina.net/akuandev/Specs.git 即可使用 oschina 上的镜像。

 

以上就是我当初安装cocoapods的所有安装过程和解决问题。特此纪念一下,也希望对需要的人有所帮助。。。

以下链接是本人安装cocoapods所参考的文章:

Cocoapods 入门

https://cocoapods.org/

CocoaPods的安装与使用

CocoaPods 安装和使用

CocoaPods安装和使用教程

都是很受启发的好文章,希望对大家有所帮助。

iOS 之 Cocoapods安装的更多相关文章

  1. iOS开展-CocoaPods安装和使用教程

    原文链接: iOS开展-CocoaPods安装和使用教程 修正已经增加了自己的理解. CocoaPods安装和使用教程 Code4App 原创文章.转载请注明出处:http://code4app.co ...

  2. iOS开发 - CocoaPods安装和使用教程

    一.CocoaPods简介 1.什么是CocoaPods CocoaPods是iOS的包管理工具. 2.为什么要使用CocoaPods 在开发iOS项目时,经常会使用第三方开源库,手动引入流程复杂,并 ...

  3. iOS之Cocoapods安装

    网上关于cocoapods的教程很多,关于它的优点我不赘述:但是我根据多次安装的经验,把我遇到的问题写一下,希望对新手有所帮助. 1. 设置输入源(由于默认的gem资源是国外的,由于历史原因,访问比较 ...

  4. (转)iOS工具--CocoaPods 安装使用总结

    本文转载自:CocoaPods 安装使用总结(最新) 一.前言 关于什么是CocoaPods,使用CocoaPods的好处等问题本文不做说明,本文只是CocoaPods的安装和使用教程.根据此教程可以 ...

  5. IOS中CocoaPods安装与使用

    网上有很多文章关于 cocoaPods配置文章,其实cocoaPods配置并不难,只是比较繁琐而已,我也是照着网站文章一步步搭建配置成功.写这篇文章的目的就是像做笔记一样,便于以后用的时候好回忆.废话 ...

  6. iOS 网络 -- cocoaPods 安装和使用教程

    Code4App 原创文章.转载请注明出处:http://code4app.com/article/cocoapods-install-usage CocoaPods 是什么? 当你开发iOS应用时, ...

  7. iOS 之 cocoapods安装与使用

    我们都知道第三方库,一般使用cocoapods管理,cocoapods在我们IOS开发中有着很大的作用. 好了,现在看下它的安装步骤: 1.打开终端,输入 sudo gem install cocoa ...

  8. IOS开发之开篇--CocoaPods安装

    CocoaPods是什么?当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNetWorking等等.可能某个类库又用到其他类库,所以要使用它,必须得另外下载其他类库,而其 ...

  9. iOS CocoaPods安装和使用图解

    Cocoapods安装步骤 1.升级Ruby环境 sudo gem update --system 如果Ruby没有安装,请参考 如何在Mac OS X上安装 Ruby运行环境 2.安装CocoaPo ...

随机推荐

  1. 【整理】Word OpenXML常用标签

    一.背景 最近在做关于Word内容自动标引,需要了解Word的底层结构,顺便梳理一下OpenXML的标签含义,方便后续开发,提高对OpenXML标签的查找效率,也是一个熟悉的过程. 二.内容 < ...

  2. 什么?你还不会写JQuery 插件

    前言 如今做web开发,jquery 几乎是必不可少的,就连vs神器在2010版本开始将Jquery 及ui 内置web项目里了.至于使用jquery好处这里就不再赘述了,用过的都知道.今天我们来讨论 ...

  3. LoadRunner 函数之 web_add_cookie

    简单示例: Action() { // 添加cookie web_add_cookie("is_login=True;path=/;domain=10.1.102.75"); // ...

  4. Linux命令--删除软连接

    1,建立软链接 ln -s 源文件 目标文件 例如:ln -s /usr/hb/ /home/hb_link 2,删除软链接 正确的是:rm -rf hb_link 错误的是:rm -rf hb_li ...

  5. cf723d Lakes in Berland

    The map of Berland is a rectangle of the size n × m, which consists of cells of size 1 × 1. Each cel ...

  6. 10款最好的 Bootstrap 3.0 免费主题和模板

    Twitter Bootstrap 框架已经广为人知,用于加快网站,应用程序或主题的界面开发,并被公认为是迄今对于Web开发的最有实质性帮助的工具之一.在此之前的,各种各样的界面库伴随着高昂的维护成本 ...

  7. PHP如何自动识别第三方Restful API的内容,自动渲染成 json、xml、html、serialize、csv、php等数据

    如题,PHP如何自动识别第三方Restful API的内容,自动渲染成 json.xml.html.serialize.csv.php等数据? 其实这也不难,因为Rest API也是基于http协议的 ...

  8. java基础知识(四)java内存机制

    Java内存管理:深入Java内存区域 上面的文章对于java的内存管理机制讲的非常细致,在这里我们只是为了便于后面内容的理解,对java内存机制做一个简单的梳理. 程序计数器:当前线程所执行的字节码 ...

  9. linux 最近使用的命令

    vi 文件名   >>  按 i 键,进行编辑,编辑完,按ESC键,再按:q代表不保存退出,按:wq代表保存退出. ps aux|grep java >>  搜索目前启动的ja ...

  10. 动态执行python脚本

    前言 存在许多独立的python脚本,这些脚本可能会增加,也可能会减少,现在需要按照某种顺序调度这些程序.在python的standard library中,有一个模块imp可以实现动态的调用ptho ...