工具-CocoaPods安装和使用及卸载
CocoaPods是iOS最常用的第三方类库管理工具,绝大部分有名的开源类库都支持CocoaPods。
我们在使用gem更新的时候,经常会为速度抓狂,其实gem默认的源是https://rubygems.org,比较慢众所周至的原因了。
可以将源更换到国内的taobao源
查看当前有的源
gem sources -l
移除https://rubygems.org源
gem sources --remove https://rubygems.org/
增加http://ruby.taobao.org/源
gem sources -a http://ruby.taobao.org/
添加完用gem sources -l
再查看一下,请确保只有http://ruby.taobao.org/这一个.然后执行
sudo gem install cocoapods
安装成功后,接着执行命令:
pod setup
如果Ruby环境不够新,可能需要更新以下:
sudo gem update --system
至此安装就完成了,我们可以尝试搜索一个第三方类库:
pod search AFNetworking
使用CocoaPods的第一步,是在当前项目下,新建一个Podfile文件:
touch Podfile
然后利用vim打开Podfile文件编辑,加入你想要使用的类库,格式如下:
platform :ios
pod 'Reachability', '3.1.0' platform:ios, '6.0'
pod 'JSONKit','1.4'
pod 'AFNetworking', '~> 2.3.1'
如果是拷贝的别人的项目,或是一个很久没打开过的项目,可能需要先执行一下:
pod update
最后一步,执行命令:
pod install
当终端出现类似下面的提示后,就代表成功了:
[!] From now on use `Sample0814.xcworkspace`.
这个时候会看到项目文件夹下多了一个文件xxx.xcworkspace,以后要通过这个文件打开项目,老项目文件xxx.xcodeproj不再使用。
P.s.1 上面的每一步都有可能出现问题,但大部分问题都是因为大局域网的原因,用一个网速稳定的境外VPN可破。
P.s.2 如果上面因为权限问题安装失败,必须每次都要删除
rm -rf /Users/loginnanme/Library/Caches/CocoaPods/
因为这个缓存中会存下你的github的东西,造成每次都调用上次权限问题的缓存。
P.s.3 关于Podfile文件编辑时,第三方库版本号的各种写法:
pod ‘AFNetworking’ //不显式指定依赖库版本,表示每次都获取最新版本
pod ‘AFNetworking’, ‘2.0’ //只使用2.0版本
pod ‘AFNetworking’, ‘>2.0′ //使用高于2.0的版本
pod ‘AFNetworking’, ‘>=2.0′ //使用大于或等于2.0的版本
pod ‘AFNetworking’, ‘<2.0′ //使用小于2.0的版本
pod ‘AFNetworking’, ‘<=2.0′ //使用小于或等于2.0的版本
pod ‘AFNetworking’, ‘~>0.1.2′ //使用大于等于0.1.2但小于0.2的版本,相当于>=0.1.2并且<0.2.0
pod ‘AFNetworking’, ‘~>0.1′ //使用大于等于0.1但小于1.0的版本
pod ‘AFNetworking’, ‘~>0′ //高于0的版本,写这个限制和什么都不写是一个效果,都表示使用最新版本
P.s.4 在项目中删除cocoapod步骤如下:
1. 删除工程文件夹下的Podfile、Podfile.lock及Pods文件夹
2. 删除xcworkspace文件
3. 使用xcodeproj文件打开工程,删除Frameworks组下的Pods.xcconfig及libPods.a引用
4. 在工程设置中的Build Phases下删除Check Pods Manifest.lock及Copy Pods Resources
Cocoapods降低版本及卸载
有的时候我们需要降低Cocoapods的版本来解决第三方库的兼容问题。
1.移除pod组件
查看cocoapods组件装在哪里:
which pod
移除pod组件
sudo rm -rf <path>
2.移除RubyGems 中的Cocoapods程序包
查看gems中本地程序包
gem list
输出如下图:
移除cocoapods程序包
sudo gem uninstall cocoapods -v 0.37.
sudo gem uninstall cocoapods-core -v 0.37.
安装制定版本的cocoapods
sudo gem install cocoapods -v 0.38.
参考文档:http://www.cnblogs.com/wayne23/p/3912882.html
工具-CocoaPods安装和使用及卸载的更多相关文章
- iOS开发者的管理工具-CocoaPods安装
1. 安装 Ruby 对于iOS开发者,CocoaPods是最方便使用的第三方管理工具了,但是怎么安装CocoaPods呢,安装CocoaPods之前,要确保mac已经安装上Ruby,但在安装Ruby ...
- (转)iOS工具--CocoaPods 安装使用总结
本文转载自:CocoaPods 安装使用总结(最新) 一.前言 关于什么是CocoaPods,使用CocoaPods的好处等问题本文不做说明,本文只是CocoaPods的安装和使用教程.根据此教程可以 ...
- iOS工具】rvm、Ruby环境和CocoaPods安装使用及相关报错问题解决
〇.前言 <p>在iOS开发中 CocoaPods作为库依赖管理工具就是一把利器. 有了 CocoaPods则无需再通过拖 第三方库及第三方库所依赖的 framework静态库到项目中等麻 ...
- CocoaPods安装、卸载、使用说明(Mac ox 10.11+)
一.全新安装前,先检查是否有安装残留 由于Mac 10.11更改了安全机制,所以cocoapods得安装和卸载命令也有所改变, 1.如果之前装过cocopods,最好先卸载掉,卸载命令: $ sudo ...
- mac上cocoapods安装与卸载
安装 # 安装最新beta版 sudo gem install cocoapods --pre -n /usr/local/bin # 安装最新稳定版 sudo gem install cocoapo ...
- iOS包管理工具Cocoapods的安装与使用
转自:http://www.sxt.cn/u/10014/blog/6448 在我们开发移动应用的时候,一般都会使用到第三方工具,而由于第三方类库的种类繁多,我们在项目中进行管理也会相对麻烦,所以此时 ...
- 安装和使用iOS的包管理工具CocoaPods
CocoaPods是ruby实现的,需要用ruby进行安装,mac自带ruby,如果没有ruby的需要先安装ruby. 安装CocoaPods命令 安装CocoaPods命令:sudo gem i ...
- cocoapods安装
什么是cocoapods CocoaPods是一个用来帮助我们管理第三方依赖库的工具.它可以解决库与库之间的依赖关系,下载库的源代码,同时通过创建一个Xcode的workspace来将这些第三方库和我 ...
- 工具 cocoapods和插件
命令行更新(安装)步骤 $ sudo gem update --system // 先更新gem,国内需要切换源 $ gem sources --remove https://rubygems.org ...
随机推荐
- hadoop集群的三种运行模式
单机(本地)模式: 这种模式在一台单机上运行,没有分布式文件系统,而是直接读写本地操作系统的文件系统.在单机模式(standalone)中不会存在守护进程,所有东西都运行在一个JVM上.这里同样没有D ...
- 07-css的继承性和层叠性
css有两大特性:继承性和层叠性 继承性 面向对象语言都会存在继承的概念,在面向对象语言中,继承的特点:继承了父类的属性和方法.那么我们现在主要研究css,css就是在设置属性的.不会牵扯到方法的层面 ...
- UNIX之父肯和丹尼斯(连载二)
从那一场“黑客招聘会”说起 2012年7月末在拉斯维加斯召开的全球黑客大会,已经是这系列会议的第二十一次.除了惯常的Bug发表.技术展示之外,最近几年的黑客大会也开始变得越来越像招聘会.IT业 ...
- 2017-11-29 由runnable说起Android中的子线程和主线程
1.首先纠正一个观点,就是runnable运行在子线程中是错误的观念.runnable只是创建了一个执行任务的对象,但是它本身并不会创建一个新的子线程,Runable只是给你接口让你实现工作线程的工作 ...
- Libre Office冻结操作-MAC
冻结行/列 选中所要冻结的行/列,选择window-Freeze 冻结成功 冻结单元格 操作方法与“冻结行/列”一致
- kepware http接口 shell开发
读取某变量的值(wget wget --quiet \ --method GET \ --header 'Connection: keep-alive' \ --header 'Cache-Contr ...
- Android多线程操作sqlite(Sqlite解决database locked问题)(2)使用事务处理的效果
问题场景描述: 在页面中用到了ViewPager控件,ViewPager中的内容分别是两个ListView,两个ListView的数据都来自本地数据库(先从网络下载数据,然后更新本地数据库),在实际的 ...
- 《mysql必知必会》学习_第12章_20180801_欢
第12章:汇总数据 P76 avg()函数求平均值 select avg(prod_price) as avg_price from products; #计算prod_price的平均值,并且命名为 ...
- NameNode工作机制
NameNode工作机制
- 最大流最小割学习 基本知识 | 证明 | FF算法
可行流 : 能流过去就行,不一定是最大流. 最大流:能流到的最大流量.(可能不只一个) 解决最大流: Ford-Fulkerson方法 最小割:从图中去除一些边,使得源点S到汇点T不连通,去除的这些边 ...