2016最新CocoaPods安装与使用

前言
是不是已经厌烦了将各种库拖拽到Xcode项目中?那么,CocoaPods的出现就帮你解决了这一问题。CocoaPods是Objective-C项目中最有名的类库管理工具,可以解决库与库之间的依赖关系,下载库的源码,供我们开发使用。最重要的是,大多的开源类库都支持它。所以,有了CocoaPods,你就可以很轻松地对项目进行扩展。
2016最新CocoaPods安装与使用,问题解决
1.mac系统已经默认安装好Ruby环境,如果你不确定自己系统中是否有Ruby的,可以在终端中输入命令行:ruby -v 查看当前ruby版本
如果ruby版本较低,可以通过rvm对Ruby进行升级
1)安装 ram
RVM:Ruby Version Manager,Ruby版本管理器,包括Ruby的版本管理和Gem库管理(gemset)
$ curl -L get.rvm.i.rvm.io | bash -s stableo
2)加载文件, 测试是否安装正常(按照提示操作)
$ source ~/.bashrc
$ source ~/.bash_profile
$ source ~/.profile
$ rvm -v
3)reload rvm
$ rvm reload rvm
$ rvm -v
4)查看当前ruby版本 ,获取rvm 列表
$ ruby -v
$ rvm list known
5)重新安装ruby
安装完成后, 需要重新执行安装cocoapods的命令
$ rvm install 2.3
6)安装rails
$ gem install rails
如果想要卸载ruby,需要执行以下步骤
$ rvm list
$ rvm remove 2.3
这样有关ruby更新的问题已经处理完毕了
2.CocoaPods的安装
先检查ruby源, 正确情况下返回以下信息:
*** CURRENT SOURCES ***
https://gems.ruby-china.org
这个是ruby的官方源码,现在国内可以使用的还有以下ruby源:
https://ruby.taobao.org/ 淘宝源
http://rubygems-china.oss.aliyuncs.com 阿里云源
确认ruby源镜像后就可以修改ruby源了,先执行删除原来的ruby源:
之后添加可用的ruby镜像源(推荐使用官方的)
gem sources -a https://gems.ruby-china.org
这个时候执行gem sources -l命令,就能看到当前镜像源里只有官方ruby源这一个了,之后执行安装cocoapods命令
在一段时间安装过后,成功后会返回以下信息:
3.CocoaPods的使用
1)CocoaPods的搜索功能
pod search AFNetworking;
执行后可能会一直停在
Setting up CocoaPods master repo然后(很久)会出现如下错误:
[!] Failed to connect to GitHub to update the CocoaPods/Specs specs repo - Please check if you are offline, or that GitHub is down
解决办法是:
这说明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
说明Cocoapods在将它的信息下载到 ~/.cocoapods里;
cd 到该目录里,用du -sh *命令来查看文件大小,结果显示0 repos,说明没有安装成功;
在终端输入:
cd ~/.cocoapods
进入cocoapods文件后在终端输入:du -sh *
重新执行pod setup,过一段时间后提示setup completed,在终端中输入 pod list,展示出安装列表;
这样总算安装好了。接下来再一次输入:
pod search AFNetworking
输入过后它可能会报:
[!] Unable to find a pod with name, author, summary, or descriptionmatching `AFNetworking`
解决方案是:
输入:
rm ~/Library/Caches/CocoaPods/search_index.json
后在一次输入:pod search AFNetworking
就可以咯。
2)首先定位到项目文件目录
cd 项目位置
然后添加podfile文件:vim podfile (注:在写该文件的时候要注意格式 ' ' );
进入后按i进入插入模式,进行编辑,安装官方最新的文档格式:
platform :ios, '8.0'
target '你的项目名称' do
pod 'AFNetworking', '~> 3.0'
end
编辑完成后,按ESC退出编辑模式,最后输入:wq保存并退出文件,此时可以发现在项目目录下多了一个Podfile的文件,请注意这个文件必须与.xcodeproj在同一目录下,
最后:pod install进行安装即可
3)CocoaPods库的跳过更新安装
pod install --verbose --no-repo-update(跳过更新进行安装)
pod update --verbose --no-repo-update(跳过更新进行更新)
2016最新CocoaPods安装与使用的更多相关文章
- 2016最新CocoaPods安装和错误解决 + 自己的经验
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 20.0px Times; color: #333333; background-color: #fffff ...
- 2016最新cocoapods安装流程,安装过程中遇到的问题及解决方法
现在的cocoapods与之前比较.有很多不一样的地方.自己试了一试,终于搞定.现在大概纪录一下. 1.首先查看ruby是否是最新版的. ruby是通过rvm安装的所以需要先安装rvm后查看ruby是 ...
- 最新cocoapods安装流程,安装过程中遇到的问题及解决方法
最近重新安装了一次cocoapods,参考的安装流程:http://blog.csdn.net/showhilllee/article/details/38398119/ 但是现在的cocoapods ...
- 最新Cocoapods 安装及使用
1.移除现有Ruby默认源 gem sources --remove https://rubygems.org/ 2.使用新的源 gem sources -a https://ruby.taobao. ...
- 2016最新cocoapods版本更新,以及多个版本的问题
先删除之前的pod 在终端中执行下面命令. 删除目录下的podrm -rf /usr/local/bin/pod 执行gem list | grep cocoapods 查看所有与cocoapods相 ...
- 2017年最新cocoapods安装教程(解决淘宝镜像源无效以及其他源下载慢问题)
首先,先来说一下一般的方法吧,就是把之前的淘宝源替换成一个可用的的源: 使用终端查看当前的源 gem sources -l gem sources -r https://rubygems.org/ # ...
- 2018.09.07 最新cocoapods安装流程
这篇写在简书了,就不费力气搬了,给简书留一篇. https://www.jianshu.com/p/13bbbf804b71
- 最新的 cocoapods 安装与使用(2016.11)
cocoapods简介: cocoapods 是iOS的类库管理工具,可以让开发者很方便集成各种第三方库,而不用去网站上一个个下载,再一个个文件夹的拖进项目中,还得添加相关的系统依赖库.只需要安装好c ...
- 最新的 cocoapods 安装与使用(2019.04)
cocoapods简介: cocoapods 是iOS的类库管理工具,可以让开发者很方便集成各种第三方库,而不用去网站上一个个下载,再一个个文件夹的拖进项目中,还得添加相关的系统依赖库.只需要安装好c ...
随机推荐
- CSS3的属性选择器
CSS3中新增了许多选择器,今天零度给大家说说CSS3的属性选择器. 与CSS2相比,CSS3新增了3种属性选择器:[attr^=value].[attr$=value].[attr*=value]: ...
- #学习笔记#——JavaScript 数组部分编程(三)
3.在数组 arr 末尾添加元素 item.不要直接修改数组 arr,结果返回新的数组 主要考察数组的concat方法,代码如下: arr.concat(item); concat 方法不修改原数组. ...
- 判断浏览器是否支持某些新属性---placeholder兼容问题解决
function is_true(){ return 'placeholder' in document.createElement('input'); } 实例:placeholder在低版本IE浏 ...
- dig---域名查询
dig命令是常用的域名查询工具,可以用来测试域名系统工作是否正常. QUESTION SECTION 这部分是提问,显示你要查询的域名 ANSWER SECTION 即答案,显示查询到的域名对应的IP ...
- mvc定时执行任务(获取气象台的气象数据,定时新增)
1.定时任务: gloabl.asax文件Application_Start()方法注册: System.Timers.Timer t = new System.Timers.Timer(theInt ...
- HTTP (httpwebrequest)
1.GET请求: public static string Get(string url) { string buffer = ""; try { HttpWebRequest r ...
- 深入具体解释SQL中的Null
NULL 在计算机和编程世界中表示的是未知,不确定.尽管中文翻译为 "空", 但此空(null)非彼空(empty). Null表示的是一种未知状态.未来状态,比方小明兜里有多少钱 ...
- 取消cp命令别名
1. 取消cp命令别名unalias cpcp -rf恢复别名alias cp='cp -i'2.关闭当前用户下的cp别名配置sed -i "s/alias cp='cp -i'/#alia ...
- centos6.*yum源更新
[1] 首先备份 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak [2]编辑vi /etc/yu ...
- 21. Node.Js Buffer类(缓冲区)-(一)
转自:https://blog.csdn.net/u011127019/article/details/52512242