一、CocoaPods介绍以及优点

  • CocoaPods 是开发 OS X 和 iOS 应用程序的一个第三方库的依赖管理工具。该项目源代码在Github上管理。

    通过
    CocoaPods,能够非常方便的查找到新的第三方库。CocoaPods的官网是这么描写叙述它自己的”The best way to manage library dependencies in
    Objective-C projects”。

  • 手动导入第三方开源库时,我们还须要在工程中配置一些文件,设置一些參数。有可能导入的库中缺少文件,这时我们要报错误时真的非常难发现。并且第三方库升级时,我们又要手动的去加入升级之后的库。觉得因素有时总会出现一些无可避免面的错误,有时你还发现不了,这让人非常苦恼。

二、CocoaPods原理

在使用CocoaPods后。我们仅仅须要把用到的开源库放到一个名为Podfile的文件里,然后运行pod
install.Cocoapods就会自己主动将这些第三方开源库的源代码下载下来。而且为我们的project设置好响应的系统依赖和编译參数。

1、Pods项目终于会编译成一个名为libPods.a的文件,主项目仅仅须要依赖这个.a 文件就可以。

2、对于资源文件,CocoaPods提供了一个名为Pods-resources.sh的bash脚本, 该脚本在每次项目编译的时候都会运行,将第三方库的各种资源文件拷贝到目 标文件夹中。

3、CocoaPods通过一个名为Pods.xcconfig的文件来在编译时设置全部的依赖和 參数。

三、CocoaPods安装

1、在安装CocoaPods之前,首先要在本地安装好Ruby环境。然后输入一行命令

   $ sudo gem install cocoapods

这时你会发现报错了

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">


2、在终端中敲入这个命令之后。会发现半天没有不论什么反应。

原因无他,由于那堵墙阻挡了cocoapods.org。

国内不能直接安装,仅仅能通过VPN或淘宝的Ruby镜像来訪问。在这里,我们利用淘宝的Ruby环境来安装。继续输入下面命令:

$ gem sources --remove https://rubygems.org/
//等有反应之后再敲入下面命令
$ gem sources -a http://ruby.taobao.org/
输完以上两个命令时,你会发现还是报错。

报错:ERROR: Could not find a valid gem 'cocoapods' (>= 0), here is why:
Unable to download data from http://ruby.taobao.org/ - bad response Not Found 404 (http://ruby.taobao.org/specs.4.8.gz)

这就是问题关键所在了。本博主在升级Xcode7之后。报这个错误,我尝试各种办法。就是没查找出原因,最后才发现

淘宝的 ruby源已经改为了 https了(一定要注意 啊),所以要在这里输入命令:

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

3、这时在输入命令,查看状态。发现成功的

$ gem sources -l

仅仅有在终端中出现以下文字才表明你上面的命令是成功的:

*** CURRENT SOURCES ***
https://ruby.taobao.org/ 4、验证一下成功安装。输入命令:(我看有些博客 还须要 设置cocoapods(一定要运行$ sudo setup)。我没运行过。

$ pod search AFNetworking

你会看到一下信息。AFNetworking 的各个版本号信息




四、CocoaPods使用

1、创建iOS项目,找到项目文件夹(xxx.xcodeproj)的同级文件夹
2、(1)在终端中进入(cd命令)你项目所在文件夹,然后在当前文件夹下。利用vim创建Podfile。执行:
$ vim Podfile

(2)“i”键进行podfile文件的编辑,退出编辑时先按下ESC键。再 执行 :wq ,Enter键就可以。

(3)然后在Podfile文件里输入下面文字:

   platform :ios, '8.0'
pod "AFNetworking", "~> 3.0"

这段文字不是凭空生成的。能够在AFNetworking的GitHub页面找到。这两句文字的意思是。当前AFNetworking支持的iOS最高版本号是iOS 8.0, 要下载的AFNetworking版本号是3.0。注意字符不能出错。直接从GitHub上的Podfile处复制过来(切忌字符不能有错)


本博主写错了字符。单引號时以及多添了第二行的代码:


watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">


报错的信息:



(4)改动之后再执行一下命令
 $ pod install


watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
(5)这时查看一下project文件名称文件夹。会发除了之前的Podfile文件之外,还现多了另外一个文件“Podfile.lock”和一个文件夹“Pods”

3、打开项目project时。不再是之前的xx.xcodeproj了,而是打开xx.xcworkspaceproject,然后导入

#import <AFNetworking.h>
或者
#import "AFNetworking.h"都是能够的。

眼下来说,使用第三方开源库,后期更新导入升级之后的库easy出错,眼下使用CocoaPods管理第三方库我没出现过错误,只是我有两同学遇到过错误。是什么错误我也没去细问,有问题了再向他们询问吧。

在网上关于CocoaPods的安装和使用一大把的文章,在这里我仅仅推荐两篇我认为不错的文章。供大家參考:

http://blog.csdn.net/iunion/article/details/17010267

http://blog.csdn.net/chen505358119/article/details/47778347

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

Xcode7安装CocoaPods的更多相关文章

  1. OS X EL Capitan安装Cocoapods 报错ERROR

    升级OS X EL Capitan10.11之后,原来的pod不能用了,重新安装cocoapods,发现 在运行 “sudo gem install cocoapods” 的时候出现问题: ERROR ...

  2. 安装cocoapods遇到两大坑-Ruby版本升级和Podfile的配置

    今天安装cocoapods #移除原有ruby源 $ gem sources --remove https://rubygems.org/ #使用可用的淘宝网 $ gem sources -a htt ...

  3. 安装cocoapods以及更新cocoapods

    安装 1.设置ruby的软件源 这是因为ruby的软件源rubygems.org因为使用亚马逊的云服务,被我天朝屏蔽了,需要更新一下ruby的源,过程如下: gem sources -l #(查看当前 ...

  4. 安装cocoapods及相关问题解决

    申明:本博客大部分内容转载自简书http://www.jianshu.com/p/b64b4fd08d3c,但还有些问题博主在这里做了补充. Mac系统版本:10.12.1 一.什么是CocoaPod ...

  5. 最新Mac OS X 10.12.1 安装cocoapods及使用详解

    cocoapods官网:https://cocoapods.org 一.什么是CocoaPods 每种语言发展到一个阶段,就会出现相应的依赖管理工具,例如 Java 语言的 Maven,nodejs ...

  6. gem安装cocoapods

    1.升级Ruby环境 sudo gem update --system 如果Ruby没有安装,请参考 如何在Mac OS X上安装 Ruby运行环境 2.安装CocoaPods时我们要访问cocoap ...

  7. 问题2: 安装cocoaPods出现的一系列问题

    在新电脑上安装cocoaPods的时候,出现了一系列的问题,现在记录下来,方便查看 1.出现 Invalid mark letter (press RETURN) 解决方案:输入 :wq 即可 2.  ...

  8. 安装cocoaPods的详细步骤

    先大概说下安装的步骤: Xcode 这个是开发必须的, HomeBrew RVM Ruby CocoaPods 一.HomeBrew: 打开官网链接:http://brew.sh/index_zh-c ...

  9. 解决 安装cocoapods失败,提示 requires Ruby version >=2.2.2

    步骤如下: rvm install ruby-2.2 但是,但是竟然报错了,具体我忘记额,但是是权限和brew的问题,那么我又转向修复brew: // 清理原来brew rm -rf /usr/loc ...

随机推荐

  1. Android性能优化工具之Systrace

    本文大部分内容来自:http://www.androidperformance.com/android-performance-tools-systrace-1.html?utm_source=tui ...

  2. SVG渲染顺序及z轴显示问题(zIndex)

    SVG是严格按照定义元素的顺序来渲染的,这个与HTML靠z-index值来控制分层不一样. 在SVG中,写在前面的元素先被渲染,写在后面的元素后被渲染.后渲染的元素会覆盖前面的元素,虽然有时候受透明度 ...

  3. 命令行界面 (CLI)、终端 (Terminal)、Shell、TTY的区别

    虽然这个话题已是老生常谈,搜索一下应该也能找到大把的相关文章.不过难得提到了这方面,就趁此机会把我的理解写下来,一来看看我是不是真正理解了,二来看看我能不能把它们之间的区别讲得更加简明易懂. 0. 太 ...

  4. 【转】Mysql行转换为列

    From : http://www.cnblogs.com/lhj588/archive/2012/06/15/2550392.html# 今晚需要统计数据生成简易报表,由原表格数据是单行的形式,最好 ...

  5. [转]如何在本地apache上架设多个站点

    http://dongxin1390008.blog.163.com/blog/static/3179247820094279581256/ 通常情况下,我们有时候需要架设多个站点 比如 我的web站 ...

  6. 【BZOJ】【3211】花神游历各国

    线段树/暴力 线段树区间开方 唉,我傻逼了一下,TLE了一发,因为没考虑到0的情况…… 好吧简单来说一下,线段树动态查询区间和大家都会做……比较麻烦的是这次的修改变成开方了,然而这并没有什么好虚的,注 ...

  7. bash 括号(小括号,双小括号,中括号,双中括号,大括号)

    小括号()和大括号{} 主要包括一下几种 ${var} $(cmd) ()和{} $((exp)) ${var:-string},${var:+string},${var:=string},${var ...

  8. google的transformer模型的解释

    参考这篇文章: https://blog.csdn.net/mijiaoxiaosan/article/details/73251443 看了下: 最核心的如下:其最重要的创新应该就是Self-Att ...

  9. 提高sql2005中带freetexttable和rank的全文检索的速度

    原来使用中的sql2005的全文检索的速度总是不如意,尤其是带rank的.今天搜了一下,原来在freetexttable中还有一个参数top_n_by_rank,是第4个参数.注意还要设置:EXEC ...

  10. 揭破android中的闹钟app 二

    · 这节,我们通过wheelview来模仿一个简易的正点闹钟. 我这里不说wheelview来龙去脉,只阐述几个简单的方法,如果,想看一看具体wheelview的内容,请看下面两篇文章: androi ...