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 ...
随机推荐
- Java&C#语法差别
Java C# 主类名与文件名 必须一致 可以不一致 命名空间导入方式 import关键字 using关键字 常量 final关键字 Const关键字 基本数据类型 C#中有无符号数,Java没有 ...
- [转]五种常见的 PHP 设计模式
FROM : http://www.ibm.com/developerworks/cn/opensource/os-php-designptrns/ 设计模式 一书将设计模式引入软件社区,该书的作者是 ...
- remote: GitLab: You are not allowed to push code to protected branches on this project.
"C:\Program Files\Git\bin\git.exe" push --recurse-submodules=check --progress "origin ...
- 洛谷 P3386 【模板】二分图匹配
题目背景 二分图 题目描述 给定一个二分图,结点个数分别为n,m,边数为e,求二分图最大匹配数 输入输出格式 输入格式: 第一行,n,m,e 第二至e+1行,每行两个正整数u,v,表示u,v有一条连边 ...
- 生成学习算法(Generative Learning algorithms)
一.引言 前面我们谈论到的算法都是在给定\(x\)的情况下直接对\(p(y|x;\theta)\)进行建模.例如,逻辑回归利用\(h_\theta(x)=g(\theta^T x)\)对\(p(y|x ...
- jQuery操作radio、checkbox、select 集合
1.radio:单选框 HTML代码: <input type="radio" name="radio" id="radio1" va ...
- 以快板之名说Android 应用程序电源管理
当里个当,当里个当.Android开发UE(用户体验)为导向,首要任务便是省电量. 当里个当,当里个当.有一设备立足于墙边,这个设备唤固定电话.你的app造成这样,用户很快把你弃墙角.你咆哮耗电奈何与 ...
- Centos6.4下安装mysql5.6.10
今天下午捣腾安装mysql和apache.从网上下载mysql5.6.10,http://ishare.iask.sina.com.cn/f/36050990.html,解压后发现没有configur ...
- Centos6.4下安装protobuf-c问题及解决办法
1.前言 protobuf是Google提供的结构持久化工具,类型XML,但要比XML更加灵活,效率要高.protobuf当初支持C++.JAVA和Python,后来有了支持C语言的Protobuf- ...
- 3分钟搞定Linux系统正则表达式
正则表达式是一种字符模式,用于在查找过程中匹配制定的字符. 元字符通常在Linux中分为两类:Shell元字符,由Linux Shell进行解析:正则表达式元字符,由vi/grep/sed/awk等文 ...