CocoaPods是iOS最常用的第三方类库管理工具,绝大部分有名的开源类库都支持CocoaPods。

CocoaPods是用Ruby实现的,要想使用它首先需要有Ruby的环境。幸运的是OS X系统默认已经可以运行Ruby了,因此我们只需执行以下命令:

  1. sudo gem install cocoapods
    sudo gem install -n /usr/local/bin cocoapods

由于某些原因,执行时会出现下面的错误提示:

  1. ERROR: Could not find a valid gem 'cocoapods' (>= 0), here is why:
  2. Unable to download data from https://rubygems.org/ - Errno::EPIPE: Broken pipe - SSL_connect (https://rubygems.org/latest_specs.4.8.gz)

当你使用代理后如果还是很慢,可以用淘宝的RubyGems镜像来代替官方版本,执行以下命令:

  1. $ gem sources -l
  2. $ gem sources --remove https://rubygems.org/
  3. $ gem sources -a https://ruby.taobao.org/
    $ gem sources -a https://gems.ruby-china.org/
  4. $ gem sources -l

安装成功后,接着执行命令:

  1. pod setup

如果Ruby环境不够新,或安装时提示"ERROR:  Error installing cocoapods:activesupport requires Ruby version >= 2.2.2."这样的错误,代表你的ruby需要更新了,需要更新一下:

  1. sudo gem update --system

如果执行完上面的命令后,还是无法更新到较新的版本,则需要用rvm来更新,具体步骤如下:

  1. $ curl -L get.rvm.io | bash -s stable
  2.  
  3. $ source ~/.bashrc
  4.  
  5. $ source ~/.bash_profile
  6.  
  7. #测试是否安装正常
  8. $ rvm -v
  9.  
  10. #查看当前ruby版本
  11. $ ruby -v
  12.  
  13. #列出已知的ruby版本
  14. $ rvm list known
  15.  
  16. #安装ruby 1.9.3
  17. $ rvm install 1.9.3

至此安装就完成了,我们可以尝试搜索一个第三方类库:

  1. pod search AFNetworking

使用CocoaPods的第一步,是在当前项目下,新建一个Podfile文件:

  1. touch Podfile

然后利用vim打开Podfile文件编辑,加入你想要使用的类库,格式如下:

  1. platform :ios
  2. pod 'Reachability', '3.1.0'
  3.  
  4. platform:ios, '6.0'
  5. pod 'JSONKit','1.4'
  6. pod 'AFNetworking', '~> 2.3.1'

如果是拷贝的别人的项目,或是一个很久没打开过的项目,可能需要先执行一下:

  1. pod update

最后一步,执行命令:

  1. pod install

当终端出现类似下面的提示后,就代表成功了:

  1. [!] From now on use `Sample0814.xcworkspace`.

这个时候会看到项目文件夹下多了一个文件xxx.xcworkspace,以后要通过这个文件打开项目,老项目文件xxx.xcodeproj不再使用。

P.s.1 上面的每一步都有可能出现问题,但大部分问题都是因为大局域网的原因,用一个网速稳定的境外VPN可破。

P.s.2 如果上面因为权限问题安装失败,必须每次都要删除

  1. rm -rf /Users/loginnanme/Library/Caches/CocoaPods/

因为这个缓存中会存下你的github的东西,造成每次都调用上次权限问题的缓存。

P.s.3 关于Podfile文件编辑时,第三方库版本号的各种写法:

  1. pod AFNetworking      //不显式指定依赖库版本,表示每次都获取最新版本
  2. pod AFNetworking’, 2.0     //只使用2.0版本
  3. pod AFNetworking’, ‘>2.0     //使用高于2.0的版本
  4. pod AFNetworking’, ‘>=2.0     //使用大于或等于2.0的版本
  5. pod AFNetworking’, ‘<2.0     //使用小于2.0的版本
  6. pod AFNetworking’, ‘<=2.0     //使用小于或等于2.0的版本
  7. pod AFNetworking’, ‘~>0.1.2     //使用大于等于0.1.2但小于0.2的版本,相当于>=0.1.2并且<0.2.0
  8. pod AFNetworking’, ‘~>0.1     //使用大于等于0.1但小于1.0的版本
  9. pod AFNetworking’, ‘~>0     //高于0的版本,写这个限制和什么都不写是一个效果,都表示使用最新版本

P.s.4 当pod setup 进入Setting up CocoaPods master repo 等待的时候表示正在下载了,此时你可通过新开一个终端窗口,输入"cd ~/.cocoapods/"命令行跳到cocoapods文件夹内,执行"du -sh *"查看正在下载的文件夹的大小。

删除master分支 重新建立新的分支

sudo rm -fr ~/.cocoapods/repos/master

删除~/Library/Caches/CocoaPods目录下的search_index.json文件

  • pod setup成功后,依然不能pod search,是因为之前你执行pod search生成了search_index.json,此时需要删掉。
  • 终端输入:rm ~/Library/Caches/CocoaPods/search_index.json
  • 删除成功后,再执行pod search

CocoaPods安装和使用的更多相关文章

  1. 最新的 cocoaPods 安装方法

    经过努力终于发现了最新的 解决cocoaPods安装的办法: taobao Gems 源已停止维护,现由 ruby-china 提供镜像服务 第一步:安装rvm, 不管需不需要升级ruby,rvm可以 ...

  2. cocoapods安装

    什么是cocoapods CocoaPods是一个用来帮助我们管理第三方依赖库的工具.它可以解决库与库之间的依赖关系,下载库的源代码,同时通过创建一个Xcode的workspace来将这些第三方库和我 ...

  3. iOS 之 Cocoapods安装

    进入正题前,先来点前奏:了解cocoapods是某天看一个博客,那时才明白原来写项目不用一个个将三方库拷进项目里啊,惊讶的我是一塌糊涂的啊...(原谅我那时还没进入过正规的IT公司....好多你们自然 ...

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

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

  5. Mac 下安装ruby,以及CocoaPods安装以及使用网摘

    ruby安装网址:https://ruby-china.org/wiki/install_ruby_guide CocoaPods安装和使用教程地址:http://code4app.com/artic ...

  6. cocoapods安装以及使用,安装过程中ruby版本过低

    cocoapods安装以及使用,安装过程中ruby版本过低 字数473 阅读103 评论1 喜欢2 1.打开终端 2.移除现有 Ruby 默认源 $ gem sources --remove http ...

  7. 2016最新CocoaPods安装和错误解决 + 自己的经验

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 20.0px Times; color: #333333; background-color: #fffff ...

  8. CocoaPods安装与使用

    CocoaPods简介: CocoaPods 是什么? CocoaPods 是开发 OS X 和 iOS 应用程序的一个第三方库的依赖管理工具.利用 CocoaPods,可以定义自己的依赖关系 (称作 ...

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

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

  10. 史上最详细的CocoaPods安装教程

    虽然网上关于CocoaPods安装教程多不胜数,但是我在安装的过程中还是出现了很多错误,所以大家可以照下来步骤装一下,我相信会很好用. 前言 在iOS项目中使用第三方类库可以说是非常常见的事,但是要正 ...

随机推荐

  1. 有米实习-用到的shell脚本和Python脚本记录

    Shell:LOG_DATE=`date -d "1 day ago" +%Y-%m-%d` #以指定格式设置一天前的年份月份日期 aws s3 ls $LAST5_BASE_PA ...

  2. 9月11日上午HTML有序列表、无序列表、网页的格式和布局

    样式表 六.列表方块 1.有序列表变无序列表 <ol> <li>张店</li> <li>桓台</li> <li>淄川</l ...

  3. C和指针 第六章 数组名与指针

    指针的算术运算符是指针和数组之间的一种关联,但不是唯一关联: 可以使用数组名作为指向数组第一个元素的指针,但是不可以给数组名赋新的值. //如下声明a int a[10]; //用a作为指向数组第一个 ...

  4. Linux-文件和目录操作命令

    1. ls命令 显示当前目录下的内容,常见的参数有3个: -a -f -l 1 ls -a 显示隐藏文件 2 ls -F 在列出的文件后加符号 3 ls -l 长格式显示文件内容 2. cd命令 cd ...

  5. 使用github pages, hexo搭建个人博客教程

    具体的原理性的东西就不说了直接上教程,怕等下自己忘了. 一. github 阶段 申请一个github 账号并成功登录进去. 创建一个名字为xxx.github.io的空项目. 二. hexo 阶段 ...

  6. Rails 实现多对多自连接

    1. 先生成关联代码 class WorkConnect < ActiveRecord::Base belongs_to :working, class_name: "Company& ...

  7. mysql存储过程学习

    一.存储过程的创建 语法: CREATE PROCEDURE sp_name (参数)合法的SQL语句 mysql> delimiter // mysql> CREATE PROCEDUR ...

  8. Python复习之下划线的含义

    __xx__ 系统定义名字 __xx 双下划线的表示的是私有类型的变量.只能是允许这个类本身进行访问了.连子类也不可以 _xx 单下划线 不能用'from moduleimport *'导入 即保护类 ...

  9. HikariCP

    HiKariCP是数据库连接池的一个后起之秀,号称性能最好,可以完美地PK掉其他连接池. 为何要使用HiKariCP?这要先从BoneCP说起: 什么?不是有C3P0/DBCP这些成熟的数据库连接池吗 ...

  10. ACM/ICPC 之 混合图的欧拉回路判定-网络流(POJ1637)

    //网络流判定混合图欧拉回路 //通过网络流使得各点的出入度相同则possible,否则impossible //残留网络的权值为可改变方向的次数,即n个双向边则有n次 //Time:157Ms Me ...