教你摆脱低级程序猿 项目中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 ...
随机推荐
- web html调用百度地图
如果想在自己的网页上面加入百度地图的话,可以用百度地图的api.具体使用方法如下: 第一步:进入百度创建地图的网站http://api.map.baidu.com/lbsapi/creatmap/,搜 ...
- 搭建LDAP服务器
1. 使用SSH 登陆服务器. 2. 更新有效的包. sudo apt-get update 3. 安装LDAP和一些其它LDAP相关的工具. sudo apt-get install slapd l ...
- CDM中添加Hive服务时Gateway是什么?
参考这里http://grokbase.com/t/cloudera/scm-users/12aayq5cyh/what-is-gateway-in-cloudera-manager 实际上Gatew ...
- ubuntun 18.04 desktop安装jupyter-notebook
在ubuntu18.04要安装jupyter-notebook,当然前提是先安装python,然后按如下步骤安装jupyter-notebook,现在记录如下: 1.sudo apt-get upda ...
- 入门智能家居,从 IFTTT 到 HomeKit 自动化(二)
入门智能家居,从 IFTTT 到 HomeKit 自动化(二) 目录 0. HomeKit.HomeBridge.HomeAssistant 分别是什么?关系是什么? 1. 开始前的准备 2. 整 ...
- Android Data Binding
Android官方数据绑定框架DataBinding, 1.什么是DataBinding 2.DataBinding基础用法 3.DataBinding原理 4.表达式 5.null检查 6.incl ...
- Codeforces Round #549 (Div. 1) 题解
link 前几天补完了某一场很早以前的div1,突然想来更博客,于是就有了这篇文章 A The Beatles 显然若起点和第一次到达的位置距离为 d ,那么经过的不同站点数为 $\frac{nk}{ ...
- Nuget 下载过慢的解决办法
设置依赖项行为为忽略,文件冲突操作为忽略
- [Go] 子类 调用 父类 的 属性、方法
package main import ( "fmt" ) type A struct { Text string Name string } func (a *A) Say() ...
- java从文件中读取数据然后插入到数据库表中
实习工作中,完成了领导交给的任务,将搜集到的数据插入到数据库中,代码片段如下: static Connection getConnection() throws SQLException, IOExc ...