iOS开发之Cocoapods

1.CocoaPods是什么?

相信有安装Cocoapods需求的小伙伴,多少都有一定了解了。这里我就不再赘述了,这里只简单说明一下,已经知道的小伙伴可以直接跳过这段。Cocoapods是一个负责管理iOS项目中第三方开源库的工具。开发iOS项目不可避免地要使用第三方开源库,CocoaPods的出现使得我们可以节省设置和更新第三方开源库的时间,在iOS开发中经常会用到第三方库如AFNetworking,ASIHttpRequest等,在使用第三方库时,你除了要导入源码外,还需要添加相应的库,但是,集成这些依赖库需要我们手动去配置,还有当这些第三方库发生了更新,还需要手动去更新项目。这就显得非常麻烦。有麻烦自然有解决办法,CocoaPods就是为了解决这个问题而生的。通过CocoaPods,我们可以将第三方的依赖库统一管理起来,配置和更新只需要通过简单的几行命令即可完成。

2.CocoaPods的下载及安装

废话不多说,直接说明具体的安装步骤。以及可能遇到的报错或者问题。

安装步骤(这里采用ruby安装,因为mac系统已经默认安装好Ruby环境)

1.首先,检查你的ruby源,然后切换为国内可访问的淘宝源。因为默认的ruby源,在大天朝正常来说你是访问不了的。打开终端,输入以下命令:

gem sources -l
默认情况下,终端应该返回如下信息:

*** CURRENT SOURCES ***
https://rubygems.org/ ```
确认镜像可用后,现在就要开始修改ruby源了。首先执行以下命令删除原来的ruby源:
```gem sources --remove https://rubygems.org/```
执行命令后可在终端看见以下信息:
```https://rubygems.org/ removed from sources```
然后下一步添加你找到的可用的镜像源:
```gem sources -a http://rubygems-china.oss.aliyuncs.com```
或者```$gem sources -a https://ruby.taobao.org/```
此时如果你再执行gem sources -l命令,就能看到当前镜像源里只有阿里云这一个了。此时你就可以执行安装命令了:
```sudo gem install cocoapods```
如果一切正常,你应该能看到一段安装进度,以及最后有一条信息:
```gems installed```
这里CocoaPods还不能正常使用,需要更新pod,下载它的一些依赖包;在终端中输入:```这步需要时间较长,请耐心等待。。。```(可以cd ~/.cocoapods 到该目录里,用du -sh *命令来查看文件大小)
```pod setup```
这里如果,提示你需要更新ruby。这里附上ruby安装教程
##ruby安装
###1.安装 RVM
RVM:Ruby Version Manager,Ruby版本管理器,包括Ruby的版本管理和Gem库管理(gemset)

```curl -L get.rvm.io | bash -s stable ```
等待一段时间后就可以成功安装好 RVM。
```source ~/.bashrc  
 source ~/.bash_profile ```
测试是否安装正常
```rvm -v ```

![20161010.png](http://upload-images.jianshu.io/upload_images/1086463-08673c50ff7c9dd4.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
###2、用RVM升级Ruby
```#查看当前ruby版本  
$ ruby -v  
ruby 1.8.7  
#列出已知的ruby版本  
$ rvm list known  
#安装ruby 1.9.3  
$ rvm install 1.9.3  

安装完成之后ruby -v查看是否安装成功。能正常显示版本号就说明安装成功了。如果出现如下报错:

Error running '__rvm_make -j 1',showing last 15 lines of /Users/GDarkness/.rvm/log/1474100434_ruby-2.2.4/make.log
先安装xcode command line 即可解决
$ xcode-select --install

补充:在使用cocoapods的时候,发现有时候通过pod search到的第三方开源库的版本比较低,不是最新。或者是出现“Unable to find a pod with name matching”


问题:##

就是当我们执行:pod search xxx 时,要么只能搜到低于你想要的第三方库版本,要么提示“Unable to find a pod with name matching”。

LH-LiudeiMac:~ pod search xxx
Unable to find a pod with name matching

解决办法:##

执行 pod repo update 更新本地仓库,本地仓库完成后,即可搜索到指定的第三方库
备注:在使用了 pod setup 之后,发现好长时间都没有变化,无法从终端上获取 pod setup 的执行情况,这时候可以command+N新建一个窗口,通过sudo ls用管理员权限查看目录,然后.cocoapods文件夹,输入du -sh命令查看文件夹大小变化,从而确定pod setup的运行情况

LH-LiudeiMac:~ zy-110$ cd ~/.cocoapods
LH-LiudeiMac:.cocoapods zy-110$ du -sh
924M .

*********************************2018年08月21日11:46:38更新***********************************
最近xcode新建新的工程,在创建pod时一直报错。pod 版本一直停留在1.3。结果查阅相关资料说,xcodeproj 版本要更新到1.5.7,使用gem update xcodeproj。更新完,接着pod install 还是失败。查阅资料说cocoapods 要使用最新版 1.5.0,结果我反复卸载重新安装,死活都是1.3 version. 使用 gem install cocoapods --pre 更新也只是停留 1.3.7.结果发现是source 源地址问题 http://rubygems-china.oss.aliyuncs.com cocopods版本只停留在了 1.3.0.必须把源地址切换为 https://gems.ruby-china.org 再在终端 sudu gem install -n /usr/local/bin cocoa pods --pre 再次查看version 就更新到了 1.6.0.beta.1。具体 请看
issues7697
*********************************2018年08月21日11:46:38更新***********************************


本文章内容也是本人学习之互联网,仅作笔记之用。如有雷同,纯属抄袭!


你可能感兴趣的:(iOS开发之Cocoapods)