cocoapods 简介:

CocoaPods是OS X和iOS下的一个第三类库管理工具,通过CocoaPods工具我们可以为项目添加被称为“Pods”的依赖库(这些类库必须是CocoaPods本身所支持的),并且可以轻松管理其版本。

Cocoapods意义体现在两个方面。第一,在引入第三方库时它可以自动为我们完成各种各样的配置,包括配置编译阶段、连接器选项、甚至是ARC环境下的-fno-objc-arc配置等。第二,使用CocoaPods可以很方便地查找新的第三方库,这些类库是比较“标准的”,而不是网上随便找到的,这样可以让我们找到真正好用的类库。

安装CocoaPods

本文开发环境为 iMac OS X 10.10.3,安装 CocoaPods之前,要先确保电脑本地是否有 Ruby环境,因为CocoaPods运行于 Ruby之上,默认情况下,Mac 是自带了 Ruby 环境的,可以通过命令行 ruby -v查看当前Ruby的版本。

执行命令:

1
2
AppledeiMac:~ apple$ ruby -v
ruby 2.0.0p481 (2014-05-08 revision 45883) [universal.x86_64-darwin14]

接下来是安装 CocoaPods,今天我遇到了一个问题,下面详细说一下

执行命令:

1
$ sudo gem install cocoapods

然后出现下面问题:

1
2
3
AppledeiMac:~ apple$ gem install cocoapods
ERROR: While executing gem ... (OpenSSL::SSL::SSLError)
hostname "rubygems-china.oss.aliyuncs.com" does not match the server certificate

网上很多资料说把镜像源改成淘宝的,执行命令:

1
$ gem sources -a http://ruby.taob.org/

然后再次执行 sudo gem install cocoapods 后,问题仍然没有被解决。后来自己分析下 ERROR原因,原来现在的镜像源不是淘宝了,是用阿里云了。看来不与时俱进,out 了!

执行命令;

1
$ gem sources -a http://rubygems-china.oss.aliyuncs.com

再次执行命令:sudo gem install cocoapods,成功后的效果如下:

$ sudo gem install cocoapods
Fetching: cocoapods-core-0.37.1.gem (100%)
Successfully installed cocoapods-core-0.37.1
Fetching: cocoapods-try-0.4.4.gem (100%)
Successfully installed cocoapods-try-0.4.4
Fetching: cocoapods-0.37.1.gem (100%)
Successfully installed cocoapods-0.37.1
Parsing documentation for cocoapods-core-0.37.1
Installing ri documentation for cocoapods-core-0.37.1
Parsing documentation for cocoapods-try-0.4.4
Installing ri documentation for cocoapods-try-0.4.4
Parsing documentation for cocoapods-0.37.1
Installing ri documentation for cocoapods-0.37.1
3 gems installed

使用CocoaPods

首先,搜索需要的第三方库是否支持 CocoaPods ,执行命令:

1
$ pod search Shimmer

如下所示:

新建一个工程CocoaPods,在工程目录下新建一个名为 Podfile 文件。这里通过执行命令:

1
$ vim Podfile

进行编辑,按 i 进入插入模式,编辑后按 ESC 退出编辑模式,最后输入 :wq 保存后并退出文件。

根据列出来的结果,编辑内容:

1
2
platform :ios, '8.1'
pod 'Shimmer','~> 1.0.2'

此时工程下就会有一个 Podfile 文件,注意必须和 .xcodeproj 在同一个目录下。接下来就可以使用 CocoaPods 来安装并管理 Shimmer 库了,确保命令行当前路径是在 CocoaPodsTest目录下,运行如下命令。

1
$ pod install

安装完成后会提示如下信息,并且我们的工程目录下会多出一个 .xcworkspace 结尾的文件。

这时候就可以在项目中使用 Shimmer库了。如果你发现 import 的时候没有提示 FBShimmering/FBShimmeringView.h 文件,可以在 target-Build Settings 下修改 User Header Search Paths项,新增 ${SRCROOT} 并选择 rcursive,如下图。

到此,新建工程并使用 CocoaPods 来管理依赖库的过程就完成了,如果是直接使用已有 CocoaPods 的项目,则需要首先运行一下 pod update 命令来更新项,然后照样通过 .xcworkspace 来打开工程。

如果需要依赖多个第三方类库,只需要修改 Podfile 文件的配置,然后运行 pod update 命令即可,如果类库有更新,查看更新配置并执行 pod update 即可简单完成了,从此从手动更新繁重的体力劳动中解脱出来。

pod 安装的更多相关文章

  1. [CocoaPods]pod安装与pod更新

    简介 许多以CocoaPods开头的人似乎认为pod install只在第一次使用CocoaPods设置项目时使用,pod update之后才会使用.但事实并非如此. 本指南的目的是解释何时使用pod ...

  2. pod 安装总结

    参考http://code4app.com/article/cocoapods-install-usage http://www.jianshu.com/p/32d9cfb91471 原文:http: ...

  3. Mac 安装Rudy环境 pod安装前的准备工作

    之前已经说过怎么使用pod 今天说一下安装pod之前的准备工作 首先呢就是Rudy 环境(前提是你已经安装了Xcode) 在终端输入一下命令 期间可能也许会要你输入密码 curl -L https:/ ...

  4. CocoaPods pod 安装、更新慢解决方法

    使用CocoaPods来添加第三方类库,无论是执行pod install还是pod update都卡在了Analyzing dependencies不动了,令人甚是DT. 每一次都忘记现在自己记录一下 ...

  5. pod 安装 Masonry 遇到问题

    pod 导入第三方库 Masonry: 在工程masonryTest的文件下新建一个Podfile文件 编辑如下内容: platform :ios, '8.0'xcodeproj 'mansoryTe ...

  6. 10.11 pod 安装

    http://blog.csdn.net/youtk21ai/article/details/48896043

  7. 安装Pod时提示ERROR: While executing gem ... (Errno::EPERM) Operation not permitted - /usr/bin/pod

    环境:OSX EI 10.11.1 昨天切换gem源后,招待pod安装没有任何问题,也可以正常用$ gem sources --add https://ruby.taobao.org/ --remov ...

  8. mac 10.11.6,Xcode8下,ruby2.3安装,Cocoapods安装~

    适用环境 mac: 10.11.6 Xcode:8.1 命令执行步骤(安装ruby2.3前准备工作) 查看ruby更新源 gem sources  -L 删除默认官方或者淘宝,新增 https://g ...

  9. iOS 学习笔记二【cocopods安装使用和安装过程中遇到的问题及解决办法】【20160725更新】

    在osx 10.11之前cocopods问题不多,但是升级到11之后的版本,之前的cocopods大多用不了,需要重新安装,对于我这种使用测试版系统的技术狂来说,每次都需要重新安装很多东西, 当然,c ...

随机推荐

  1. 开发人员需要具备的DBA技术

    背景 在一些小公司或者部门里,通常很少有专门的DBA职位.这时候就需要我们这些程序员充当业余DBA的作用,去监测和维护数据库性能.本文的目的是帮助非DBA专业的开发人员如何定位和解决日常出现数据库问题 ...

  2. log4j No appenders could be found for logger

    在main中加一句:BasicConfigurator.configure();

  3. 打包AAC码流到FLV文件

    AAC编码后数据打包到FLV很简单. 1. FLV音频Tag格式                              字节位置    意义0x08,                       ...

  4. C#中怎么解析JSON数据,并获取到其中的值?

    [1]首先我们根据创建一个json字符转 string json = @"[{'phantom':true,'id':'20130717001','data':{'MID':1019,'Na ...

  5. ACM学习历程—POJ 3764 The xor-longest Path(xor && 字典树 && 贪心)

    题目链接:http://poj.org/problem?id=3764 题目大意是在树上求一条路径,使得xor和最大. 由于是在树上,所以两个结点之间应有唯一路径. 而xor(u, v) = xor( ...

  6. 原 requirements.txt 介绍 & 快捷生成

    requirements.txt介绍   requirements.txt 文件 里面记录了当前程序的所有依赖包及其精确版本号.   这个文件有点类似与Rails的Gemfile.其作用是用来在另一台 ...

  7. DataGrid 支持字符截断显示

    DataGrid支持截断时, 需要分2部分, DataGridColumnHeader和DataGridCell. 1)创建上述2部分的ControlTemplate . 2)把其中的ContentP ...

  8. UIButton常见用法

    //UIButton是iOS中用来响应用户点击的控件,既可以显示文字,也可以显示图片,也可以处理用户交互 //UIButton的创建,一般采用类方法来创建,不需要释放 //UIButton 也是UIC ...

  9. C#添加修改控件css样式

    一.添加属性 MyStyleSheet.Attributes.Add("href","/css/flostyle.css") 二.改变css样式 if (use ...

  10. 自己写的基于java Annotation(注解)的数据校验框架

    JavaEE6中提供了基于java Annotation(注解)的Bean校验框架,Hibernate也有类似的基于Annotation的数据校验功能,我在工作中,产品也经常需要使 用数据校验,为了方 ...