教你摆脱低级程序猿 项目中cocopads的安装使用
小农今天聊聊一款作为iOS开发者必备的第三方管理软件。希望程序猿朋友们看到小农的这篇文章后。可以真正的学会怎样灵活管理你项目中的第三方。
(一)CocoaPods是什么?
首先我们来认识一下这款第三方软件。当我们开发iOS应用时,会常常使用到非常多第三方开源类库,比方JSONKit,AFNetWorking等等。
可能某个类库又用到其它类库,所以要使用它。必须得另外下载其它类库,而其它类库又用到其它类库,“子子孙孙无穷尽也”,这或许是比較特殊的情况。总之小农的意思就是,手动一个个去下载所需类库十分麻烦。第二种常见情况是,你项目中用到的类库有更新。你必须得又一次下载新版本号,又一次增加到项目中,十分麻烦。
假设能有什么工具能解决这些恼人的问题,那将“善莫大焉”。所以,你须要
CocoaPods。
CocoaPods应该是iOS最经常使用最有名的类库管理工具了,上述两个烦人的问题,都能够通过cocoaPods来完美解决,你所要做的就是一行命令,当然前提是你必须正确设置它。重要的是,绝大部分有名的开源类库。都支持CocoaPods。所以,作为iOS程序猿的我们,掌握CocoaPods的使用是不可缺少的基本技能了。
(二)安装CocoaPods的准备工作
在安装CocoaPods之前,首先要在本地安装好Ruby环境。
小农今天在此先安装homebrew(至于为什么要使用homebrew再安装ruby,我如今不用多说,后面你们自然明确),接下来我就介绍下怎样在Mac安装Ruby环境。
备注:以下全部命令均是在超级终端中完毕。全部命令均以$开头。
(1)安装homebrew
1.1安装homebrew就是以下这句命令:
$ ruby -e
"$(curl -fsSL https://raw.github.com/gist/323731)"
1.2 自己主动安装中......waiting
1.3 在安装过程中会要求输入管理员password。
1.4 输完password继续安装
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvVjVWNl9uZWls/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
(2)安装ruby环境,
2.1加入淘宝ruby镜像
$ gem sources --remove https://rubygems.org/
//等有反应之后再敲入下面命令
$ gem sources -a http://ruby.taobao.org/
(三)安装CocoaPods
输入命令:
$ sudo gem install cocoapods
開始安装:
检查安装完成的cocopads是否能正常执行,能够输入search命令进行測试:
正在搜索是否支持AFNetworking第三方。
搜索完成后的结果例如以下:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvVjVWNl9uZWls/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" style="">
假设出现了上面的情况,那么就说明已经能够正常执行了。能够往里面加入第三方了。
(四)执行CocoaPods
(1)首先通过cd命令进入自己project所在的目录。
这里不用多说。
(2)然后在该目录内创建一个空白的Podfile文件,注意文件名称一定要是Podfile,由于到时候pods是通过这个文件来管理你的第三方的。
使用命令:$ touch Podfile
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvVjVWNl9uZWls/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
(3)Podfile中写入相关信息
$ platform :ios,
'6.0'
$ 'AFNetworking', '~> 2.5.0'
然后执行 $ pod install,执行结果例如以下:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvVjVWNl9uZWls/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
看见这句蓝色的字了吗。说明成功安装了。
它提示以后使用project就通过这个xcworkspace的文件来訪问。
(五)使用CocoaPods
虽然前面安装看起来较为复杂,可是使用管理起来非常easy,要哪个第三方。就往 Podfile里面加入响应名称和版本。
然后执行 pod install命令就可以自己主动安装。
(六)常见错误
(1)Podfile路径写错误,更改位置就可以。
(2)cd命令找不到目录,检查路径。
教你摆脱低级程序猿 项目中cocopads的安装使用的更多相关文章
- 程序猿职业生涯中的 Norris 常数
我的朋友Clift Norris发现了一个基本常数.我称之为Norris常数,一个未经培训的程序猿在他或她遇到瓶颈之前能写出的平均代码量.Clift预计这个值是1500行. 超过这个数以后,代码会变得 ...
- 全栈之路-小程序API-SpringBoot项目中参数校验机制与LomBok工具集使用
参数校验机制在web开发中是非常重要的,每当看到现在所在公司的校验代码,我都有头疼,每一个接口都是重新写参数的校验,有些复杂的接口,参数的校验甚至占了整个接口代码量的挺大一部分的,看着我都有些头疼,我 ...
- laravel项目中通过nvmw安装node.js和npm 开发环境-- windows版
windows版本安装 此教程执行的时候,网速一定要好.不然可能出现各种错误. 如果本文对你有用,请爱心点个赞,提高排名,帮助更多的人.谢谢大家!❤ git clone nvmw 直接从 githu ...
- 黑马程序猿——Java中的类载入器
------- android培训.java培训.期待与您交流! -------- 类载入器 Java虚拟机中能够安装多个类载入器,系统默认三个主要类载入器,每一个类负责载入特定位置的类: BootS ...
- C#控制台程序读取项目中文件路径
//使用appdomain获取当前应用程序集的执行目录 string dir = AppDomain.CurrentDomain.BaseDirectory; //使用path获取当前应用程序集的执行 ...
- 在vue项目中stylus的安装及使用
Stylus是一个CSS预处理器. Stylus安装包安装: dell@DESKTOP-KD0EJ4H MINGW64 /f/gsff-frone $ cnpm install stylus --sa ...
- 在项目中添加ReactiveCocoa #安装与配置
这是对官方教程的补充 To add RAC to your application: Add the ReactiveCocoa repository as a submodule of your a ...
- iOS开发小技巧--初始化项目中修改APP安装后的名称
- ABP module-zero +AdminLTE+Bootstrap Table+jQuery权限管理系统第十五节--缓存小结与ABP框架项目中 Redis Cache的实现
返回总目录:ABP+AdminLTE+Bootstrap Table权限管理系统一期 缓存 为什么要用缓存 为什么要用缓存呢,说缓存之前先说使用缓存的优点. 减少寄宿服务器的往返调用(round-tr ...
随机推荐
- MyEclipse如何查找指定工程下所有或指定文件中特定字符串并且可进行批量替换
查找操作步骤:(1)在myEclipse里菜单选择-Search-Search(快捷键:ctrl+h);(2)在弹出对话框中选File Search选项,然后在第一个文本框中输入“要查找的字符串”(为 ...
- js+ajax+springmvc实现无刷新文件上传
话不多说直接上代码 <%@ page language="java" contentType="text/html; charset=UTF-8" pag ...
- mysql xtrabackup工具备份
一.注意事项 建议用xtrabackup备份时采用全备或增量备份的方式,楼主也尝试过单库备份,但是都以备份后恢复到已经存在数据库的mysqldata目录下后部分库会出幺蛾子而告终,建议使用mysqld ...
- 多线程十之CopyOnWriteArrayList源码分析
目录 简介 类结构 源码解析 构造方法 add(E e) add(int index, E element) get(int index) remove(int index) 迭代器Iterator遍 ...
- 踩过无数坑实现的哈夫曼压缩(JAVA)
最近可能又是闲着没事干了,就想做点东西,想着还没用JAVA弄过数据结构,之前搞过算法,就试着写写哈夫曼压缩了. 本以为半天就能写出来,结果,踩了无数坑,花了整整两天时间!!orz...不过这次踩坑,算 ...
- CSS3利用一个div实现内圆角边框效果
*首先要清楚的是,box-shadow的形状会随着border-radius变化.下面的例子可以证明: <!doctype html> <html lang="en&quo ...
- 命令:history
简介 shell进程会在其会话中保存此前用户执行过的命令. 历史列表(history list):当前shell所使用的历史命令存储位置. 历史文件(history file):每次登入shell,就 ...
- forof循环
一.语法 1.遍历数组 let myArr=[1,2,3,4,5]; for (let ele of myArr) { console.log(ele); } let myArr=[1,2,3,4,5 ...
- strlen()和mb_strlen()
换行需要用双引号,单引号只会输出字符. strlen()返回字符串所占的字节数,对于utf8编码的中文,一个汉字占三个字节. mb_strlen()返回字符个数,如果不写第二个参数,就会使用内部编码, ...
- Linux驱动之串口(UART)
<uart驱动程序概述> 在嵌入式Linux系统中,串口被看成终端设备,终端设备(tty)的驱动程序分为3部分: tty_core tty_disicipline tty_driver ...