最新的CocoaPods安装教程

 更新时间:2017年12月18日 08:41:43   作者:林夕不昔  
写一篇文章完整地记录一下自己的CocoaPods安装过程,并收集了一些安装过程常见的错误供大家参考。
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud

(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

CocoaPods是什么?

当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNetWorking等等。可能某个类库又用到其他类库,所以要使用它,必须得另外下载其他类库,而其他类库又用到其他类库,“子子孙孙无穷尽也”,这也许是比较特殊的情况。总之小编的意思就是,手动一个个去下载所需类库十分麻烦。另外一种常见情况是,你项目中用到的类库有更新,你必须得重新下载新版本,重新加入到项目中,十分麻烦。如果能有什么工具能解决这些恼人的问题,那将“善莫大焉”。所以,你需要 CocoaPods。

CocoaPods应该是iOS最常用最有名的类库管理工具了,上述两个烦人的问题,通过CocoaPods,只需要一行命令就可以完全解决,当然前提是你必须正确设置它。重要的是,绝大部分有名的开源类库,都支持CocoaPods。所以,作为iOS程序员的我们,掌握CocoaPods的使用是必不可少的基本技能了。

如何下载和安装CocoaPods?

第一步:安装ruby

不能一上来就换ruby源,虽然mac自带了ruby,但是版本一般比较低,如果不进行更新会导致版本依赖问题。

这里使用rvm来管理ruby,它允许共存多个ruby。RVM:Ruby Version Manager,Ruby版本管理器,包括Ruby的版本管理和Gem库管理。

通过以下命令来安装rvm:

$ curl -L get.rvm.io | bash -s stable 
$ source ~/.bashrc 
$ source ~/.bash_profile 

完成后就可以通过以下命令来查看rvm是否安装成功:

rvm -v 

然后就可以用rvm来安装或升级Ruby了,首先查看一下Ruby的版本:

MacBook-Air:~ xxxxx$ rvm list known
# MRI Rubies
[ruby-]1.8.6[-p420]
[ruby-]1.8.7[-head] # security released on head
[ruby-]1.9.1[-p431]
[ruby-]1.9.2[-p330]
[ruby-]1.9.3[-p551]
[ruby-]2.0.0[-p648]
[ruby-]2.1[.10]
[ruby-]2.2[.6]
[ruby-]2.3[.3]
[ruby-]2.4[.0]
ruby-head

可以看到当前的最新版本,然后通过以下命令来安装它:

rvm install 2.4 

安装好后将它设为默认版本:

rvm use 2.4 --default 

第二步:更改ruby源

升级好最新的ruby之后就可以更改ruby源了。

首先移除原有的墙外的源:

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

然后添加目前最新的由ruby官方中国维护的源:

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

然后确保当前只有这么一个源:

MacBook-Pro:~ xxxxx$ gem sources -l 
*** CURRENT SOURCES *** 
 
https://gems.ruby-china.org/ 

然后进行ruby的组件更新:

sudo gem update --system 

以上是多数网上比较权威的步骤,如果你跟着弄下来没有问题就没有问题了。

我跟着做下来的时候在update里一直会报这样一个错误:

ERROR: While executing gem ... (OpenSSL::SSL::SSLError) 
  hostname "upyun.gems.ruby-china.org" does not match the server certificate 

最后各种尝试。用以下方法成功继续下去,如果你也有同样的情况可以尝试以下。
先把刚添加的源去掉,在重新添加一个源,把原地址最后的斜杠去掉:

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

第三步:安装CocoaPods

sudo gem install -n /usr/local/bin cocoapods 
sudo xcode-select --switch /Applications/Xcode.app 

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

pod setup 

这一步需要些时间,耐心等就是了。
如果安装失败,~/.cocoapods里面是空的,就需要重新setup

pod repo remove master 
pod setup 

最后如果出现Setup completed则说明安装完成了。

第四步:创建Podfile

1、新建工程,并cd到工程目录
2、新建Podfile文件

vim Podfile

3、按 i (英文输入状态下)进入编辑状态
4、输入相应的第三方和版本,比如:

platform:ios,'8.0' 
target '你的项目名称' do 
pod '类库名称' 
end 

为了确定第三方开源类库是否支持CocoaPods,可以用CocoaPods的搜索功能验证一下。在终端中输入:

 $ pod search 类库名称

5、编辑好,先按esc键,再输入:wq(英文输入状态下)保存退出

6、导入第三方库

 pod install

7、打开后缀为.xcworkspace的工程文件,以后编码也是在此文件中进行操作。

8、在需要使用第三方库的时候,导入头文件即可,比如:#import <AFNetworking.h>

相关文章

  • Ruby数组(Array)学习笔记

    Ruby数组(Array)学习笔记

    这篇文章主要介绍了Ruby数组(Array)学习笔记,本文讲解了Ruby中数组的定义、数组元素的访问、数组的操作、数组的运算等内容,需要的朋友可以参考下
    2014-11-11
  • Ruby生成随机数的方法总结

    Ruby生成随机数的方法总结

    在本文里小编给大家分享的是关于Ruby生成随机数的知识点方法,有需要的朋友们可以学习下。
    2019-01-01
  • 详细解析Ruby中的变量

    详细解析Ruby中的变量

    这篇文章主要介绍了详细解析Ruby中的变量,是Ruby学习中最基础的知识之一,需要的朋友可以参考下
    2015-05-05
  • Ruby中gem包管理器的用法及用bundler来管理多版本的gem

    Ruby中gem包管理器的用法及用bundler来管理多版本的gem

    gem是Ruby环境中的包管理器,好比于Python中的pip与JavaScript本地Node.js的npm,非常有名和强大,下面就来看一下Ruby中gem包管理器的用法及用bundler来管理多版本的gem的方法:
    2016-05-05
  • CentOS 7下配置Ruby语言开发环境的方法教程

    CentOS 7下配置Ruby语言开发环境的方法教程

    对于新入门的开发者,如何安装 Ruby, Ruby Gems 和 Rails 的运行环境可能会是个问题,下面这篇文章主要给大家分享了在CentOS 7下配置Ruby语言开发环境的方法教程,文中介绍的非常详细,需要的朋友们下面来一起看看吧。
    2017-05-05
  • 在Ruby程序中连接数据库的详细教程

    在Ruby程序中连接数据库的详细教程

    这篇文章主要介绍了在Ruby程序中连接数据库的详细教程,包括介绍数据库支持Ruby的接口等,是学习Ruby on Rails的基础,需要的朋友可以参考下
    2015-04-04
  • ruby ftp封装实例详解

    ruby ftp封装实例详解

    这篇文章主要介绍了ruby ftp封装实例详解的相关资料,需要的朋友可以参考下
    2017-05-05
  • Ruby实现网页图片抓取

    Ruby实现网页图片抓取

    本文给大家分享的是个人使用ruby编写的抓取网页图片的代码,十分的简单实用,有需要的小伙伴可以参考下。
    2016-04-04
  • 艰难完成 nginx + puma 部署 rails 4的详细记录

    艰难完成 nginx + puma 部署 rails 4的详细记录

    用 Ruby on Rails 写了个半成品 Limlog 博客系统作为 Rails 练习,花了很长时间想解决部署问题,终于才刚解决。。。
    2014-06-06
  • 简要说明Ruby中的迭代器

    简要说明Ruby中的迭代器

    这篇文章主要介绍了Ruby中的迭代器,迭代器的概念在动态语言的编程中十分重要,文章中介绍了Ruby中的each迭代器和collect迭代器,需要的朋友可以参考下
    2015-04-04

最新评论

?


http://www.vxiaotou.com