Xcode7安装CocoaPods
一、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安装
$sudo gem install cocoapods
这时你会发现报错了
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
原因无他,由于那堵墙阻挡了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 installwatermark/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
Xcode7安装CocoaPods的更多相关文章
- OS X EL Capitan安装Cocoapods 报错ERROR
升级OS X EL Capitan10.11之后,原来的pod不能用了,重新安装cocoapods,发现 在运行 “sudo gem install cocoapods” 的时候出现问题: ERROR ...
- 安装cocoapods遇到两大坑-Ruby版本升级和Podfile的配置
今天安装cocoapods #移除原有ruby源 $ gem sources --remove https://rubygems.org/ #使用可用的淘宝网 $ gem sources -a htt ...
- 安装cocoapods以及更新cocoapods
安装 1.设置ruby的软件源 这是因为ruby的软件源rubygems.org因为使用亚马逊的云服务,被我天朝屏蔽了,需要更新一下ruby的源,过程如下: gem sources -l #(查看当前 ...
- 安装cocoapods及相关问题解决
申明:本博客大部分内容转载自简书http://www.jianshu.com/p/b64b4fd08d3c,但还有些问题博主在这里做了补充. Mac系统版本:10.12.1 一.什么是CocoaPod ...
- 最新Mac OS X 10.12.1 安装cocoapods及使用详解
cocoapods官网:https://cocoapods.org 一.什么是CocoaPods 每种语言发展到一个阶段,就会出现相应的依赖管理工具,例如 Java 语言的 Maven,nodejs ...
- gem安装cocoapods
1.升级Ruby环境 sudo gem update --system 如果Ruby没有安装,请参考 如何在Mac OS X上安装 Ruby运行环境 2.安装CocoaPods时我们要访问cocoap ...
- 问题2: 安装cocoaPods出现的一系列问题
在新电脑上安装cocoaPods的时候,出现了一系列的问题,现在记录下来,方便查看 1.出现 Invalid mark letter (press RETURN) 解决方案:输入 :wq 即可 2. ...
- 安装cocoaPods的详细步骤
先大概说下安装的步骤: Xcode 这个是开发必须的, HomeBrew RVM Ruby CocoaPods 一.HomeBrew: 打开官网链接:http://brew.sh/index_zh-c ...
- 解决 安装cocoapods失败,提示 requires Ruby version >=2.2.2
步骤如下: rvm install ruby-2.2 但是,但是竟然报错了,具体我忘记额,但是是权限和brew的问题,那么我又转向修复brew: // 清理原来brew rm -rf /usr/loc ...
随机推荐
- PHP开发微信被动回复消息遇到的大坑
最近开始做CMS后台与微信公众号的整合,在做被动回复消息时,按照官方文档的XML格式回复消息,总是提示"该公众号提供的服务出现故障,请稍后再试".但是通过微信提供的接口调试工具看我 ...
- mysqldump参数详细说明
Mysqldump参数大全(参数来源于mysql5.5.19源码) 参数 参数说明 --all-databases , -A 导出全部数据库. mysqldump -uroot -p --al ...
- 奇怪吸引子---BurkeShaw
奇怪吸引子是混沌学的重要组成理论,用于演化过程的终极状态,具有如下特征:终极性.稳定性.吸引性.吸引子是一个数学概念,描写运动的收敛类型.它是指这样的一个集合,当时间趋于无穷大时,在任何一个有界集上出 ...
- CentOS6.4下安装Chrome
因为蛋疼的glibc问题,(我就纳闷了,为何CentOS支持的glibc的版本就那么低呢,害得我至今还没把genymotion安装上), Chrome浏览器一直没安装上,不过终于找到了解决方案,安装派 ...
- Html.AntiForgeryToken() 防止CSRF攻击 的AJaX应用
有关Html.AntiForgeryToken()的使用其实网上的说明很多了,比如http://blog.csdn.net/cpytiger/article/details/8781457 那么我们写 ...
- Reboot server stuck at “Press ESC in 1 seconds to skip startup.nsh”
I have a Cisco C240 server, and everytime after reboot, it will got stuck at screen like below. To r ...
- [PowerShell Utils] Remotely install Hyper-V and Failover Cluster feature on a list of windows 2012 servers
Hello everyone, this is the second post of the series. . Background =============== In my environm ...
- Could not load file or assembly 'System.Data.SQLite' or one of its dependencies. An attempt was made to load a program
今天同事在一个服务器(winserver 2008 x64)上新建了一个IIS(7) 网站,但是报了如下错误: Could not load file or assembly 'System.Data ...
- 通过经纬度坐标计算距离的方法(经纬度距离计算)ZZ
通过经纬度坐标计算距离的方法(经纬度距离计算) 最近在网上搜索“通过经纬度坐标计算距离的方法”,发现网上大部分都是如下的代码: #define PI 3.14159265 static double ...
- NSURLSession下载
ios7引入了NSURLSession,通过它可以支持后台相关的网络操作的新特性: 1. 后台上传下载: 2.不需要通过nsoperation,直接用nsurlsession的api就可以做到网络操作 ...