Carthage 安装以及初步实用
本人从事 iOS 开发已有5年多,用 swift 开发也有一年多的时间了,此前一直利用 cocopods 管理三方框架和依赖,最近了解到 Carthage 这个工具,本着学习的态度对这工具进行了了解.
官方地址: https://github.com/Carthage/Carthage
Carthage 简介
- Carthage 类似于 CocoaPods,为用户管理第三方框架和依赖,但不会自动修改项目文件和生成配置
- Carthage 是去中心化的依赖管理工具,安装依赖时不需要去中心仓库获取 CocoaPods 所有依赖的索引,节省时间
- 对项目无侵入性,Carthage 设计上也比较简单,利用的都是 Xcode 自身的功能,开发者在创建依赖时,相比 CocoaPods 也简单许多
- Carthage 管理的依赖只需编译一次,项目干净编译时,不会再去重新编译依赖,节省时间
- 自动将第三方框架编程为 Dynamic framework( 动态库 )
与 CocoaPods 无缝集成,一个项目能同时拥有 CocoaPods 和 Carthage - 缺点:
- 仅支持 iOS8 +
- 它只支持框架,所以不能用来针对 iOS 8 以前的系统版本进行开发
支持的 Carthage 安装的第三方框架和依赖不如 CocoaPods 丰富 - 无法在 Xcode 里定位到源码
- 安装包的大小比用CocoaPods安装的包大
安装
使用 Homebrew 安装 Carthage.
安装 Homebrew
Install Homebrew:
获取 Homebrew 最新版本
$ brew update
Homebrew 常用命令
- 搜索
$ brew search <packageName>
- 安装
$ brew install <packageName>
- 卸载
$ brew uninstall <packageName>
- 查看已安装包列表
$ brew list
- 查看包信息
$ brew info <packageName>
- 查看Homebrew版本
$ brew -v
- 搜索
安装 Cartgage
- 安装
$ brew install carthage
- 查看 Cartgage 版本
$ carthage version
- 更新 carthage 版本
brew upgrade carthage
- 删除carthage旧版本
brew cleanup carthage
使用 Cartgage 安装依赖
- 进入项目所在路径
$ cd ~/路径/项目文件夹
- 创建空的 Carthage 文件 Cartfile
$ touch Cartfile
- 使用 Xcode 打开 Cartfile 文件
$ open -a Xcode Cartfile
- 编辑 Carfile 文件(以Alamofire为例)
github "Alamofire/Alamofire" == 4.4.0
- 执行更新命令,获取类库
$ carthage update --platform iOS
- 更新完成,检查目录结构
更新完成后项目根路径会多出两个文件(Cartfile.resolved,Cartfile)和一个文件夹(Carthage), Carthage下又有两个文件夹(Checkouts 和 Build), Checkouts 从github获取的源代码, Build 编译出来的Framework二进制代码库.
添加 Frameworks 到项目中
- 点击’项目名’ --> ‘TARGETS’ --> ‘General’, 在最下边找到’Linked Framework and Libraries’.
- 点击’+’ --> ‘Add Other …’, 选择’Carthage/Build/iOS/Alamofire.framework’,点击 ‘Open’ 导入.
- 选择菜单选项 ‘Build Phases’ --> 点击 ‘+’ --> ‘New Run Script Phase’, 添加以下命令:
/usr/local/bin/carthage copy-frameworks
- 点击 ‘Input Files’ 下的 ‘+’,为每个 Framework 添加访问路径:
$(SRCROOT)/Carthage/Build/iOS/Alamofire.framework
- 在项目中 import 所需包就可以使用了.
import Alamofire
Carthage 安装以及初步实用相关推荐
- Docker Compose 简介、安装、初步体验
[Docker那些事]系列文章 docker 安装 与 卸载 centos Dockerfile 文件结构.docker镜像构建过程详细介绍 Dockerfile文件中CMD指令与ENTRYPOINT ...
- EVC4 安装与初步使用
EVC4 安装与初步使用 EVC 4下载 安装序列号:TRT7H-KD36T-FRH8D-6QH8P-VFJHQ http://download.microsoft.com/download/c/3/ ...
- Lemur的安装于初步使用
November 23 Lemur的安装于初步使用 参考文档: Installing and Running Lemur(Version 4.7) 偶要补充几句: 1.windows 环境下,安装之后 ...
- 禅道的安装及初步使用(一)
禅道的安装 1. 安装包下载 禅道官网地址:https://www.zentao.net/index.html 注:本次测试使用的版本为专业版8.9.4,其他版本可自行尝试.专业版,企业版都可免费试用 ...
- 图数据库JanusGraph介绍及使用(三):安装与初步使用
图数据库JanusGraph介绍及使用(三):安装与初步使用 作者:家辉,日期:2018-07-05 CSDN博客: http://blog.csdn.net/gobitan 说明:这是图数据库Jan ...
- g2o的安装及初步使用
声明:本博客仅供个人学习使用.转载自 Jasmine_shine g2o的安装及初步使用 运行环境:ubuntu12.04 + g2o 个人原创,转载请注明来自Jasmine_shine的专栏: ...
- spark1.3.0__for_hadoop2.4.1编译、安装与初步测试
文章来源:http://blog.csdn.net/javastart/article/details/44558997 spark1.3.0__for_hadoop2.4.1编译.安装与初步测试 分 ...
- Django 学习(一)Django安装以及初步使用
刚入门学习Django,目的是希望建立一个属于自己的页面.从零开始,持续学习- 首先要安装好Python----最好安装现流行的Python3.X版本 Python安装好后,安装Django Djan ...
- 图片文字识别(一):tesseract-ocr-4.00的安装与初步进行图片文字识别
简介: tesseract-ocr可以对图像文字进行识别,为图文转换的工作时省去了大量时间.我们还可以通过不断的训练字库,使图像转换文本的能力不断增强,也可以调试模型使图像文字进行程序的识别率更高, ...
最新文章
- 移动磁盘格式化了的资料寻回方法
- 理解Hinted Handoff
- RabbitMQ 6种工作模式
- 关于jq+easy-ui 中上传文件所遇到的问题
- 2017年12月英语四级翻译预测
- Hive体系结构(三)元数据库与基本操作
- 职场上个人的核心技术_职场上的情绪管理
- 设计模式---简单工厂设计模式
- redis超时原因排查
- JavaScript十六进制、八进制、二进制与十进制互转
- 后面冒号_Python 数组中的冒号使用
- linux shell eval,【shell】bash shell 中 set 和 eval 命令的使用
- 安卓文件操作全解:内部文件、公共文件、私有文件、app静态文件
- What is the !! (not not) operator in JavaScript?
- matlab创建wps服务器,wps设置云服务器地址(wps放到服务器)
- 使用DTW算法对上证50成分股走势进行聚类分析
- 按键,触摸屏流程分析
- STM32+LTC6804/LTC6811采集电压温度电流/BMS储能采集板
- 华科计算机学院硕士武汉理工推免,学霸宿舍升级版!这个学院5个宿舍20名成员集体保研...
- 计算机知识的黑板报图片大全,学习黑板报精选图片欣赏
热门文章
- 基于QML的图片浏览器
- 劈尖干涉公式_劈尖干涉条纹的特征.PPT
- Fuel gauge---CW2015CHBD
- 关于移动端布局不兼容ipad和ipad pro 解决方法
- texturePacker 指令 .pvr.ccz 转 .png, 报错 : Not all sprites could be packed into the texture!
- SDUT 贪心商人小鑫
- Java中矩阵运算Array2DRowRealMatrix(math3的使用)
- 这个js转html,html转js的代码
- 单片机IO口应用-独立按键控制LED以及控制LED灯闪烁
- 解构微信(四):不靠QQ,品牌和推广要推翻重来