CocoaPods 安装和使用
一、《什么是CocoaPods》
官网描述:CocoaPods is the dependency manager for Swift and Objective-C Cocoa projects. It has almost ten thousand libraries and can help you scale your projects elegantly.(CocoaPods是一个独立的管理器,可以为Swift/Objective-C项目提供管理,它拥有数千万计的第三方库,因而可以帮你优雅地管理你的项目结构)
我的理解:让程序猿工作的效率更高,更方便的管理第三方库。(ios项目引用到第三方库很常见,有些大型项目引用的库可能是10+个,人为的管理起来,显得有点低效,正因为这样的应用需求,故Cocoapods出现了)
二、《如何安装》
首先、
1.确保你的Mac安装了Brew
2.使用brew命令,安装ruby。(我们安装cocoapods需要ruby命令,所以需要安装ruby)
安装命令: brew install ruby
3.安装cocoapods
按照官网的指示:在终端输入:sudo gem install cocoapods即可安装cocoapods成功。
但注意,在tian朝似乎是没那么容易就可以安装成功的。(可以使用vpn代理去下载)
如果没有vpn,接下来的具体步骤可以即使在tian朝也可以安装成功。
终端依次输入以下命令:
1)gem sources --remove https://rubygems.org/
// (2016年01月15日09:33:26修改:需要使用https。)
2)gem sources -a https://ruby.taobao.org/
上面的步骤,主要是让你重新指定一个镜像地址,访问国内的镜像地址去下载安装cocoapods.
查看是否修改镜像地址成功:
3)gem sources -l
修改成功后,就可以执行cocoapods安装命令安装cocoapods了。执行安装命令:
4)sudo gem install cocoapods
成功。
三、《如何使用cocoapods》
使用xcode创建一个项目、比如CocoaPodsDemo。使用终端cd进入到项目下、创建Podfile文件(没有后缀、只有名称,推荐使用pod init命令来创建Podfile模板)。
编辑Podfile文件、推荐使用vim来写、编写pod文件的时候,需要注意:platform平台的定义ios要全部小写、注意引号(英文单点引号)。
Podfile编写样例:
platform:ios, '8.0'
pod 'AFNetworking'
pod 'SDWebImage'
上面的3行说明了Podfile的编写规范。指定了ios平台,指定了ios的版本。并导入最新版本的AFNetworking,和最新版本的SDWebImage库。
Podfile文件编写成功后,执行命令:pod install 开始安装。
等待一会儿,cocoapods正在帮你下载你的第三方库。。。可能会有报错,大部分原因都是因为你的Podfile文件编写格式有错误。
执行完成以后,你可以看到:
$ pod install
Analyzing dependencies
Downloading dependencies
Installing AFNetworking (2.5.4)
Installing SDWebImage (3.7.2)
Generating Pods project
Integrating client project
[!] Please close any current Xcode sessions and use `CocoapodsDemo.xcworkspace` for this project from now on.
上面的信息说明第三方库已经成功导入到了我的CocoapodsDemo项目中了。按照最后一句说的来做。
(pod指定版本的库,格式:pod 'ReactiveCocoa', '~> 2.5',不填写版本的话,默认pod最新版本的第三方库)
打开我们项目中的CocoapodsDemo.xcworkspace项目,因为这个是Cocoapdos为我们整合了第三库,合并代码建立的项目。
在代码里,比如使用SDWebImage,只要这样: #import <SDWebImageManager.h>
打开CocoapodsDemo.xcworkspace,可以看看cocoapods为我们创建的新的项目结构。
可以看到项目中已经包含了SDWebImageManager和AFNetworking了。
Cocoapods可以管理第三方库,我们可以这样做去更新第三方库:
1. 使用pod的install命令去安装我们需要的第三方库。
2.如果第三方库在github上面有新的更新,比如bug修复,功能性增加等。
此时可以使用pod的另外一个命令(pod update) 去获取最新的库,cocoapods会自动为项目整合最新的代码,生成xcworkspace。
3.使用pod search xxxx去查看是否有这样的库。例如(pod search SDWebImage)
番外:
如何删除一个不再需要的第三方库?
同样,编辑Podfile文件,删除你想要去除的第三方库,保存Podfile文件,然后记得执行命令pod install。
至此,已经学会了如何使用Cocoapods去方便的导入第三方了。不用自己麻烦的拷贝粘贴,还有各种出错的信息需要去调试解决。
—————————————2016年05月03日10:33:47【注】—————————————————————
升级OS X系统版本10.11.4后,pod命令消失了。。。。重新按照上面的步骤,重新装一遍。
当执行到:sudo gem install cocoapods命令后,出现如下错误。
ERROR: While executing gem ... (Errno::EPERM)
Operation not permitted - /usr/bin/xcodeproj
尝试:
sudo nvram boot-args="rootless=0"
sudo reboot
命令关机重启后,问题并没有解决。。。
最终解决方法:sudo gem install -n /usr/local/bin cocoapods
转载于:https://www.cnblogs.com/vokie/p/4868624.html
CocoaPods 安装和使用相关推荐
- 【iOS工具】rvm、Ruby环境和CocoaPods安装使用及相关报错问题解决(2016 12 15 更新)...
〇.前言 在iOS开发中 [CocoaPods](https://github.com/CocoaPods/CocoaPods) 作为库依赖管理工具就是一把利器. 有了 CocoaPods 则无需再通 ...
- 2016最新CocoaPods安装与使用
2019独角兽企业重金招聘Python工程师标准>>> 2016最新CocoaPods安装与使用 2016最新CocoaPods安装与使用,问题解决 1.mac系统已经默认安装好Ru ...
- Cocoapods安装过程【转载】
简介 CocoaPods是什么? CocoaPods是一个负责管理iOS项目中第三方开源库的工具. CocoaPods好处? 开发iOS项目不可避免地要使用第三方开源库,CocoaPods的出现使得我 ...
- OBJC依赖库管理利器cocoapods 安装及使用详细图解
cocoapods: github:https://github.com/CocoaPods/CocoaPods 官方网站:http://www.cocoapods.org/ 1.安装 RubyGem ...
- 2021.4.23最新mac11.1 big sur 关于CocoaPods安装和使用
2021.4.23关于CocoaPods安装和使用 第1部分 CocoaPods 的安装 CocoaPods 是iOS开发必不可少的一个第三方框架的管理工具,和Java的Maven类似,maven也是 ...
- iOS CocoaPods安装和使用图解
Cocoapods安装步骤 1.升级Ruby环境 sudo gem update --system 如果Ruby没有安装,请参考 如何在Mac OS X上安装 Ruby运行环境 2.安装CocoaPo ...
- CocoaPods安装及使用
CocoaPods安装 gem source查看gem源 如果没有https://ruby.taobao.org/,则删除同有的源,并添加https://ruby.taobao.org/源: gem ...
- cocoapods 安装失败 ERROR: Error installing cocoapods: ERROR: Failed to build gem native extension.
cocoapods 安装失败 完整报错 尝试安装 我的问题 使用 Alamofire 需要基于 CocoaPods,但是在尝试安装 CocoaPods 的过程中遇到了很多问题,捣鼓了很久都失败了,最后 ...
- iOS之Cocoapods安装
网上关于cocoapods的教程很多,关于它的优点我不赘述:但是我根据多次安装的经验,把我遇到的问题写一下,希望对新手有所帮助. 1. 设置输入源(由于默认的gem资源是国外的,由于历史原因,访问比较 ...
最新文章
- 网络资源(4) - extJS视频
- c#_TcpListenerTcpClient
- ES6基础之——对比两个值是否相等Object.is()
- 1067. [SCOI2007]降雨量【线段树】
- JavaScript学习代码整理(二)--函数
- [原创]Toolbar setNavigationIcon无效
- spring作业_Spring和石英:多作业计划服务
- 蓝桥杯物联网例程下载
- 第六十六期:软件架构之道的一次感悟
- VScode 格式化代码快捷键、修改快捷键
- android状态栏背景色和图标颜色更改总结
- oracle安装后再建库,oracle-数据库的安装与建库
- 【Foreign】字符串匹配 [KMP]
- 彻底弄明白Gradle相关配置
- enfuzion与lsf构建渲染集群_渲染农场 - 秦瑞It行程实录 - 博客园
- android studio json数据解析汇总(备忘)
- Excel中ISEVEN函数用法之判断数值奇偶性
- python汇率兑换_美元与人民币汇率 Python
- Ubuntu 16.04下安装配置Trac项目管理工具
- beast软件linux用法,显卡设置项 - 黑苹果驱动高手篇 MultiBeast用法进阶_Linux教程_Linux公社-Linux系统门户网站...
热门文章
- 【WebRTC---入门篇】(五)Web服务器原理与Nodejs搭建
- HTML设置字体颜色1008无标题,如何在HTML中设置字体颜色,你知道这几种方式吗?...
- 提高mysql insert速度_让你的insert操作速度增加1000倍的方法
- python 接收邮件服务器地址_Python 用IMAP接收邮件
- tensorflow 小于_坐姿不对,屏幕就变模糊!教你用TensorFlow做一款“隐形背背佳”...
- Ubuntu文件上锁了,怎么打开???亲测有效
- 什么是SFP光模块?SFP光模块小知识介绍!
- 【渝粤教育】广东开放大学 会展项目管理 形成性考核 (59)
- python脚本设置环境变量_详解如何设置Python环境变量?
- #让人物运动_篮球人物之黄云龙,淡泊名利的他是篮球运动员中的楷模,你可记得...