p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 20.0px Times; color: #333333; background-color: #ffffff }
span.s1 { }

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

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Arial }
p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Arial; color: #3333ff }
p.p3 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Arial; min-height: 16.0px }
p.p4 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Arial; color: #3366ff }
p.p5 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.4px Arial }
span.s1 { background-color: #ffffff }
span.s2 { }
span.s3 { color: #ff9900 }

最近安装CocoaPods,在网上找了一下资料,发现文章要么过时,要么各种报错。都是抄来抄去,没有靠谱的,特意整理了一下最新的教程,并亲测成功。taobao Gems 源已停止维护,现由 ruby-china 提供镜像服务

第一步:安装rvm,

不管需不需要升级ruby,rvm可以让你拥有多个版本的Ruby,并且可以在多个版本之间自由切换。如果已经安装过跳到第2步(rvm -v 查看是否安装)

$ curl -L get.rvm.io | bash -s stable

//需要等一会

$ source ~/.bashrc

$ source ~/.bash_profile

等待终端加载完毕,后输入

rvm -v

oiKen:安装rvm后的反馈中有一些是要求你执行的命令,例如 source /Users/mac/.rvm/scripts/rvm

我想还是执行一下比较好。

如果能显示版本好则安装成功了。

第二步:安装ruby

CocoaPods目前安装需要Ruby的版本大于2.2.2,不然会报错:Error installing pods: activesupport requires Ruby version >= 2.2.2。目前Mac系统默认自带是2.0,所以需要升级。

查看已安装的ruby:

rvm list

如果已安装版本大于2.2.2,直接到第3步。

ruby -v  //也可以查看ruby版本

//列出ruby可安装的版本信息

rvm list known

rvm install 2.2.2  //安装一个ruby版本

这里一定要设置为默认版本

rvm use 2.2.2 --default

oiKen:我安装了最新的2.3.0,期间卡在brew的地方不动,我就停止,

去更新brew:brew update,再继续就能安装最新的2.3 版本的rvm了,

当然设置了2.3.0版本为默认版本

第三步:更换源

我们需要来修改更换源(由于国内被墙)所以要把源切换至ruby-china在终端执行以下命令

目前网上文章大都是这面这种:

$ sudo gem update --system

$ gem sources --remove https://rubygems.org/

//等有反应之后再敲入以下命令

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

这里是个大坑:会报错_connect returned=1 errno=0 state=SSLv3 read servercertificateB:certificate verify failed (https://ruby.taobao.org/specs.4.8.gz)

这是因为taobao Gems 源已停止维护,现由 ruby-china 提供镜像服务,正确的操作是:

$ sudo gem update --system

$ gem sources --remove https://rubygems.org/

$ gem sources --remove https://ruby.taobao.org/       //如果安装了淘宝的镜像

//等有反应之后再敲入以下命令

gem sources -a https://gems.ruby-china.org/

为了验证你的Ruby镜像是并且仅是ruby-china,可以用以下命令查看:

$ gem sources -l

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

*** CURRENT SOURCES ***

https://gems.ruby-china.org/

# 确保只有 gems.ruby-china.org

第四步:安装CocoaPods

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

oiKen:这句里我用提示失败了,因为我没有/usr/local/bin这个目录,

用的是 sudo gem install cocoapods --pre ,安装了最新的版本,

可能不稳定,但对于后续安装库时出现一些奇怪的问题是用最新版才能解决的

再加一句,完美解决

sudo xcode-select --switch/Applications/Xcode.app

oiKen:这句我没有用,我不知道是什么意思

在终端中输入如下命令来完成安装:

pod setup

它需要一点时间来完成,我反正是挂机等了一晚,你等就是了

如果安装失败 ~/.cocoapods 里面是空的,就需要重新setup

命令如下:

pod repo remove master

pod setup

完毕之后这个文件夹大概有 100多M,需要花费比较多时间,请耐心等待。

到这里你已经成功安装了CocoaPods

终极办法:把你已经装好了cocoaPods同事~/.cocoapods目录下的repo目录拷贝下来,放进自己的目录里。再  pod setup

为了确定CocoaPods是否可以使用,可以用CocoaPods的搜索功能验证一下。在终端中输入:

$ pod search AFNetworking

过一段时间之后(可能会比较久),你会在终端中看到一些红色的错误信息,如下:

Setting up CocoaPods master repo

[!] /usr/bin/Gitclone 'https://github.com/CocoaPods/Specs.git' master --depth=1

Cloning into 'master'...

error: RPC failed; result=52, HTTP code = 0

fatal: The remote end hung up unexpectedly

这说明CocoaPods还不能正常使用,需要更新pod,下载它的一些依赖包;在终端中输入:

$ pod setup

过一段时间之后,你会在终端中看到跟上面同样的红色的错误信息。

敲入以上命令时,小编终端上是这个样子的(由于太长,仅截取前面一部分):

这说明某些环境原因导致pod更新不了,可能原因有,1)gem版本太低;2)github无法链接;3).cocoapods目录下的配置信息错误。我们可以一个一个来排除,

首先更新gem到最新版本,在终端中输入:

$ sudo gem update --system

然后检查是否可以ping通github,在终端中输入:

$ ping github.com

然后查看pob repo list:

$ pod repo list

结果显示0 repos,说明没有安装成功;

删除.cocoapods目录,重新下载pod更新:

$ cd ~/.cocoapods/

$ sudo -rm -rf ~/.cocoapods/

重新执行pod setup,过一段时间后提示setup completed,在终端中输入 pod list,展示出安装列表;

敲入以上命令时,小编终端上是这个样子的(由于太长,仅截取前面一部分):

看到这里,你心里会不会说,我靠!太爽了,终于下载并且安装好了!接下来看下如何使用吧。。

我们先创建这个神奇的PodFile。在终端中进入(cd命令)你项目所在目录,然后在当前目录下,利用vim创建Podfile,运行:

$ vim Podfile

oiKen:或者直接 pod init 也会产生podfile文件

然后在Podfile文件中输入以下文字:

需要注意的是podfile里面输入的格式变了。

platform :ios, '8.0'

target '你的项目名称' do

pod 'AFNetworking', '~> 3.1.0'

end

然后保存退出。vim环境下,保存退出命令是:

:wq

这时候,你会发现你的项目目录中,出现一个名字为Podfile的文件,而且文件内容就是你刚刚输入的内容。注意,Podfile文件应该和你的工程文件.xcodeproj在同一个目录下。

这时候,你就可以利用CocoPods下载AFNetworking类库了。还是在终端中的当前项目目录下,运行以下命令:

$ pod install

注意最后一句话,意思是:以后打开项目就用 CocoaPodsDemo.xcworkspace 打开,而不是之前的.xcodeproj文件。否则无法关联pod下来的类库。

2016最新CocoaPods安装和错误解决 + 自己的经验的更多相关文章

  1. 2016最新CocoaPods安装与使用

    前言 是不是已经厌烦了将各种库拖拽到Xcode项目中?那么,CocoaPods的出现就帮你解决了这一问题.CocoaPods是Objective-C项目中最有名的类库管理工具,可以解决库与库之间的依赖 ...

  2. 2016最新cocoapods安装流程,安装过程中遇到的问题及解决方法

    现在的cocoapods与之前比较.有很多不一样的地方.自己试了一试,终于搞定.现在大概纪录一下. 1.首先查看ruby是否是最新版的. ruby是通过rvm安装的所以需要先安装rvm后查看ruby是 ...

  3. 2017年最新cocoapods安装教程(解决淘宝镜像源无效以及其他源下载慢问题)

    首先,先来说一下一般的方法吧,就是把之前的淘宝源替换成一个可用的的源: 使用终端查看当前的源 gem sources -l gem sources -r https://rubygems.org/ # ...

  4. 最新cocoapods安装流程,安装过程中遇到的问题及解决方法

    最近重新安装了一次cocoapods,参考的安装流程:http://blog.csdn.net/showhilllee/article/details/38398119/ 但是现在的cocoapods ...

  5. 最新Cocoapods 安装及使用

    1.移除现有Ruby默认源 gem sources --remove https://rubygems.org/ 2.使用新的源 gem sources -a https://ruby.taobao. ...

  6. setuptools安装和错误解决

    错误解决:ImportError No module named setuptools GitHub: https://github.com/pypa/setuptools 下载安装 wget htt ...

  7. redis 安装 与错误解决办法

    redis 安装与安装中遇到的错误 redis 安装 wget http://download.redis.io/releases/redis-4.0.11.tar.gz .tar.gz cd red ...

  8. SQL Server2005中文版x64安装29506错误解决办法

    在使用SQL Server 2005简体中版安装时,使用X86(32位操作系统下)安装没有出现任何问题.可是在X64(64位操作系统下)安装过程没有出现问题,可是安装完成后却没有Microsoft S ...

  9. MongoDB下载+安装+配置+错误解决方法

    下载 官网下载: https://www.mongodb.com/download-center/community Server=>Download 安装 下载完成后安装 建议下载根目录(下过 ...

随机推荐

  1. java反射实现动态代理

    参考:http://www.cnblogs.com/rollenholt/archive/2011/09/02/2163758.html http://my.oschina.net/lyp3314/b ...

  2. JS魔法堂:从void 0 === undefined说起

    一.前言 当使用coffeescript书写如下代码时 name = person?.name 会被预编译为 ; ,那么void 0到底是什么意思呢?运行得知void 0===undefined为tr ...

  3. Spark程序使用groupByKey后数据存入HBase出现重复的现象

    最近在一个项目中做数据的分类存储,在spark中使用groupByKey后存入HBase,发现数据出现双份( 所有记录的 rowKey 是随机  唯一的 ) .经过不断的测试,发现是spark的运行参 ...

  4. SQL--视图

  5. DP - 2016网易杭研笔试题A

    2016网易杭研笔试题A Problem's Link ------------------------------------------------------------------------ ...

  6. 暴力枚举 + 24点 --- hnu : Cracking the Safe

    Cracking the Safe Time Limit: 1000ms, Special Time Limit:2500ms, Memory Limit:65536KB Total submit u ...

  7. 添加html元素

    html: <div id='divContainer'> </div> 1.使用DOM对象添加元素 var el = document.createElement('div' ...

  8. 基于ListBox的相关操作

    Winform中两个listbox的操作是平时比较常用的操作. 本次将以一个Winform实例来分享一下两个listbox的操作,包括:listbox添加项,项的上移下移等操作. 假设有两个listb ...

  9. CSS代码重构与优化之路

    作者:@狼狼的蓝胖子 网址:http://www.cnblogs.com/lrzw32/p/5100745.html 写CSS的同学们往往会体会到,随着项目规模的增加,项目中的CSS代码也会越来越多, ...

  10. java开源时间/日期库Joda-Time

    任何企业应用程序都需要处理时间问题.应用程序需要知道当前的时间点和下一个时间点,有时它们还必须计算这两个时间点之间的路径.使用 JDK 完成这项任务将非常痛苦和繁琐.现在来看看 Joda Time,一 ...