.CocoaPods是什么?

CocoaPods是一个负责管理iOS项目中第三方开源库的工具。CocoaPods的项目源码在Github上管理。我们开发iOS项目不可避免地要使用第三方开源库,CocoaPods的出现使得我们可以节省设置和更新第三方开源库的时间,在iOS开发中经常会用到第三方库如AFNetworking,ASIHttpRequest等,在使用第三方库时,你除了要导数源码外,但是,集成这些依赖库需要我们手动去配置,还有当这些第三方库发生了更新,还需要手动去更新项目。这就显得非常麻烦。有麻烦自然有解决办法,CocoaPods就是为了解决这个问题而生的。通过CocoaPods,我们可以将第三方的依赖库统一管理起来,配置和更新只需要通过简单的几行命令即可完成。

.CocoaPods的下载及安装

手动安装:

Macruby()Ruby的,可以在终端中输入命令行:ruby -v查看当前ruby版本。如图:

确定以后,在Terminator(也就是终端)中输入以下命令:

sudo gem install cocoapods

可能在终端中敲入这个命令之后,会发现半天没有任何反应。原因是那堵墙阻挡了cocoapods.org。

解决办法:我们可以Ruby镜像来访问cocoapods。按照下面的顺序在终端中敲入依次敲入命令:

首先,检查你的ruby源:

$gem sources -l

默认情况下,终端应该返回如下信息:

https://rubygems.org/

当然这个源在墙内是访问不到的。因此我们需要寻找一个可以在国内访问到的镜像。目前找到的是https://gems.ruby-china.org,当然随着时间的推移,未来这个镜像也有可能无法访问了,到时候就只能重新寻找了。(注意:对镜像不清楚的可以直接去https://gems.ruby-china.org查看)

确认镜像可用后,现在就要开始修改ruby源了。首先执行以下命令删除原来的ruby源:

执行命令后可在终端看见以下信息:

然后下一步添加你找到的可用的镜像源:

此时如果你再执行gem sources -l命令,就能看到当前镜像源。此时你就可以重新执行这一段开头的那句命令了:

如果一切正常,你应该能看到一段安装进度,以及最后有一条信息:

gems installed

确认看见这条信息,后先判断的CocoaPods是否可以使用,可以用CocoaPods的搜索功能验证一下。在终端中输入:

pod search AFNetworking;

执行后可能会一直停在 Setting up CocoaPods master repo然后(很久)会出现如下错误:

解决办法是:

这说明CocoaPods还不能正常使用,需要更新pod,下载它的一些依赖包;在终端中输入:

$ pod setup

过一段时间之后,你会在终端中看到跟上面同样的红色的错误信息。

三:某些环境原因导致pod更新不了,可能原因有:

1)gem版本太低  2)github无法链接   3).cocoapods目录下的配置信息错误。

首先更新gem到最新版本,在终端中输入:

$ sudo gem update --system

然后检查是否可以ping通github,在终端中输入:

$ ping github.com

然后查看pob repo list:

$ pod repo list

注意Cocoapods在将它的信息下载到 ~/.cocoapods里;

 cd  到该目录里,用du -sh *命令来查看文件大小,结果显示0 repos,说明没有安装成功;

在终端输入:

cd ~/.cocoapods

进入cocoapods文件后在终端输入:du -sh *

执行pod setup,过一段时间后提示setup completed,在终端中输入 pod list,展示出安装列表;

这样总算安装好了。接下来再一次输入:

pod search AFNetworking

输入过后它可能会报:

[!] Unable to find a pod with name, author, summary, or descriptionmatching `AFNetworking`

解决方案是:输入:

rm ~/Library/Caches/CocoaPods/search_index.json

在一次输入:pod search AFNetworking

插件安装:

可以直接下载这里cocoapods的插件,下载完成后打开运行

其实,不管是使用命令还是使用插件,使用大致步骤都是一样的:

第一步,需要创建项目

第二步,创建Podfile文件(这个非常重要)

第三步,搜索需要用的第三方库(主要是版本号),填写到podfile文件并保存。

第四步,安装第三方库,退出,用xcworkspace文件打开(只能用这个打开,不是以前的xcodeproj文件了)。

第五步,导入头文件,开始使用。

首先,安装成功插件之后,在Xcode的Product选项里面会出现一个cocoapods的条目,如果你看到这个,说明基本已经安装成功了。

 

另一种方法:

Alcatraz是一个能帮你管理Xcode插件丶模版及颜色配置的工具.它可以直接集成在Xcode的图形界面中,让你感觉就像在使用Xcode自带的功能一样

使用如下的终端来安装Alcatraz:

https:/raw.github.com/supermarin/Alcatraz/master/Scripts/install    如果你不想使用Alcatraz了,可以使用如下命令来删除:

~\     删除所有通过Alcatraz安装的安装包

~\

使用Alcatraz

安装成功后重启Xcode,就可以在Xcode的顶部菜单中找到Alcatraz,如下图所示:

单击"Package Manager",即可启动插件列表页面,如下图所示.

相关问题链接:

iOS开发-Alcatraz插件管理

      Cocoapods 的安装、使用及其配置

      http://www.jianshu.com/p/6e5c0f78200a  

      CocoaPods官网 :http://cocoadocs.org

Stackoverflow主页:http://stackoverflow.com/search?q=CocoaPods

Alcatraz插件下载 : https://github.com/alcatraz/Alcatra

CocoaPod安装和使用教程的更多相关文章

  1. IOS学习7——cocoapod安装与使用教程

    参考: iOS开发-CocoaPods使用详细说明  iOS开发-CocoaPods使用详细说明 一.CocoaPods简述 iOS开发时,项目中经常会需要引用第三方框架库,如果每用到一个第三方框架哦 ...

  2. CentOS7下自定义目录安装mono+jexus教程

    一.阅读前须知: 1.本文属于安装完Centos7之后的步骤 2.如果还不了解mono,请点击mono 3.本篇主要内容是使用自定义目录安装mono+jexus教程,使用默认目录请查看使用默认目录安装 ...

  3. 【转】真正从零开始,TensorFlow详细安装入门图文教程!(帮你完成那个最难的从0到1)

    AI这个概念好像突然就火起来了,年初大比分战胜李世石的AlphaGo成功的吸引了大量的关注,但其实看看你的手机上的语音助手,相机上的人脸识别,今日头条上帮你自动筛选出来的新闻,还有各大音乐软件的歌曲& ...

  4. CentOS7下默认目录安装mono+jexus教程

    一.阅读前须知: 1.本文属于安装完Centos7之后的步骤 2.如果还不了解mono,请点击mono 3.本篇主要内容是使用默认目录安装mono+jexus教程,使用自定义目录请查看使用自定义目录安 ...

  5. << CocoaPods安装和使用教程 >>github code4app以及cocoachina 苹果官方文档

    developer.apple.com 英文搜索各个技术的官方介绍文档, 前提是英文过关 cocoachina ios最新新闻, 信息 code4app上有许多组件 http://www.code4a ...

  6. webpack安装配置使用教程详解

    webpack安装配置使用教程详解 www.111cn.net 更新:2015-09-01 编辑:swteen 来源:转载 本文章来为各位详细的介绍一下关于webpack安装配置使用教程吧,这篇文章对 ...

  7. NSIS安装制作基础教程[初级篇], 献给对NSIS有兴趣的初学者

    NSIS安装制作基础教程[初级篇], 献给对NSIS有兴趣的初学者 作者: raindy 来源:http://bbs.hanzify.org/index.php?showtopic=30029 时间: ...

  8. 安装WordPress详细教程指南

    最近准备自己建一个个人博客,以便分享一些自己工作生活中的一些观点及经验,建博客当然选wordpress,毕竟wordpress是为博客而生的嘛.下边记录一下自己安装WordPress的详细过程指南,亦 ...

  9. 纯windows下制作变色龙引导安装U盘教程

    原创教程:纯windows下制作变色龙引导安装U盘教程 支持Mavericks和Yosemite 支持白苹果 目标:windows下制作带 Chamelon变色龙引导的黑苹果安装U盘,支持PC机引导安 ...

随机推荐

  1. Twisted

    Twisted是一个事件驱动的网络框架,其中包含了诸多功能,例如网络协议,线程,数据库管理,网络操作,电子邮件等 事件驱动 一,注册事件 二,触发事件 自定义事件框架  event_fram.py # ...

  2. 转WCF Proxy Authentication Required

    WCF Proxy Authentication Required The Problem When I’m in the office, I have to use an authenticated ...

  3. poj1113

    http://poj.org/problem?id=1113 完全时copy大神给的模版哦,结果再加一个小圆的周长就好啦 #include<stdio.h> #include<mat ...

  4. IOS :编译时出现的错误 ,希望可以有所帮助

    1."std::ios_base::Init::~Init()", referenced from 答1: 如果出现这样的编译问题,是需要再加进libstdc++.dylib和li ...

  5. 迁移学习( Transfer Learning )

    在传统的机器学习的框架下,学习的任务就是在给定充分训练数据的基础上来学习一个分类模型:然后利用这个学习到的模型来对测试文档进行分类与预测.然而,我们看到机器学习算法在当前的Web挖掘研究中存在着一个关 ...

  6. sqlldr

    1.字符集 sqlldr可以指定读取的文件的字符集,如果数据库为gbk,读取的文件为utf-8,这个时候就需要指定字符集 load data CHARACTERSET 'UTF8' 2.sqlldr导 ...

  7. git笔记 常规使用

    1. 创建分支    git checkout -b fetch_name 2. 添加快照进行登记 git add . 3.登记到仓库 git commit -m 'message' git comm ...

  8. Excel 取得一定范围内最大的有值的行号

    dim iRow iRow = Range("A1000").End(xlUp).Row

  9. bash 相关的一些小代码片断

    批量修改文件名: for i in *.html; do mv $i ${i/oldstring/newstring}; done; 批量替换文件内容: sed -i "s/oldstrin ...

  10. java下的字符流

    输入流和输出流相对于内存设备而言.将外设中的数据读取到内存中:输入将内存的数写入到外设中:输出.字符流的由来:其实就是:字节流读取文字字节数据后,不直接操作而是先查指定的编码表.获取对应的文字.比如, ...