Cocoa依赖管理器 -- 去中心化的Carthage & Cocoapods
来源:互联网 发布:办公软件2003 mac版 编辑:程序博客网 时间:2024/05/22 17:47
- 一 Carthage
- Carthage简单介绍
- Carthage和cocoapods 的区别
- Carthage的安装和使用
- 卸载更新 Cartage
- Carthage的工作过程说明
- 二 Cocoapods
- 更新
- 使用
- 搜索cocoapods是否支持要使用的第三方类库
- 切换到工程目录路径下 cd 路径
- 安装Podfile文件
- 如果再次在Podfile文件中增加其他类库的依赖完成之后需要更新 Podfile
一. Carthage
1. Carthage简单介绍
主页: https://github.com/Carthage/Carthage
目标:用最简单的方式来管理Cocoa第三方框架
- 性质:第三方框架管理工具(类似于cocoapods) Carthage为用户管理第三方框架和依赖,但不会自动修改项目文件和生成配置,把对项目结构和设置的控制权交给用户。
- 原理:自动将第三方框架编程为Dynamic framework(动态库)
- 限制:仅支持iOS8+。它只支持框架,所以不能用来针对iOS8以前的系统版本进行开发
2. Carthage和cocoapods 的区别
1)使用了CocoaPods的项目是高度集成的,而Carthage更灵活强调尽可能将任务委托给Xcode和Git。
“CocoaPods在使用中会自动创建和更新workspace、依赖和Pod项目并进行整合;
“Carthage在使用中不需要创建和集成相应的workspace和project,只需要依赖打包好的framework文件即可。
- “总结一下,CocoaPods的方法更容易使用,而Carthage更灵活且对项目没有侵入性。
2)CocoaPods相对来说功能要比Carthage多很多,因此也更复杂,而CocoaPods配置简单项目干净。
- 3)CocoaPods有一个中心仓库,而Carthage是去中心化的,没有中心服务器也就避免了可能因中心节点错误而带来的失败,即Carthage每次配置和更新环境,只会去更新具体的库,时间更快。
- 4)想让自己的第三方库支持Carthage比让其支持CocoaPods更加的简单。
5)Carthage的不足:
① 库依然不如 CocoaPods 丰富② 仅支持iOS8+③ 工具尚且不如cocoapods晚上(已经发布了app)④ 在使用第三方库的过程中无法查看源码
3. Carthage的安装和使用
1)安装
① 直接下载Carthage.pkg安装包,安装运行
② 或者打开终端,使用指令安装
$ brew update
$ brew install carthage
你安装好Carthage后,在终端执行:
$ carthage version
2) 在项目中使用carthage
1、通过终端进入到项目所在的文件夹:
$ cd ~/Path/Project
2.创建一个空的carthage文件
$ touch Cartfile
3.使用xcode打开cartfile文件 or 使用命令打开后编辑 cartfile 文件
$ open -a Xcode Cartfile
- 并在打开的文件中加入以下内容:
github "框架名称"
- 或者使用框架在 GitHub 上的地址
git "https://github.com/框架名称.git"
4)保存并关闭cartfile文件,使用cartfile安装框架
$ Carthage update --platform iOS
5) 打开Carthage 查看生产的文件目录
$ open Carthage
文件目录说明:
“~/Carthage/Checkouts目录:从github获取的源代码
“~/ Carthage/Build目录:编译出来的Framework二进制代码库6) 配置项目
现在打开你的项目,点击project,选择target, 再选择上方的General,将需要的framework文件拖到 Linked frameworks and Binaries内
7)添加编译的脚本(该脚本文件保证在提交归档时会对相关文件和dSYMs进行复制)
8)已经导入的第三方库了,可以在项目中使用第三方库
#import "框架名称"
4. 卸载/更新 Cartage:
卸载Carthage:
$ brew uninstall Carthage
更新第三方框架:
- 更新多个框架:修改Cartfile文件,并重新执行
$ Carthage update
- 更新某个框架:
$ Carthage update 具体的框架名称
- 更新多个框架:修改Cartfile文件,并重新执行
5. Carthage的工作过程说明
① 创建一个Cartfile文件,在该文件中列出您想使用的框架
② 运行Carthage,获取并编译Cartfile文件中列出的框架
③ 把框架的二进制文件配置到项目中
二. Cocoapods
1. (更新)
如果在执行sudo gem install cocoapods的时候报以下错误:
ERROR: While executing gem ... (Errno::EPERM)Operation not permitted - /usr/bin/pod
并且你的操作系统是EI Caption,可是尝试使用以下方法来代替上面的安装命令:
$ sudo gem install -n /usr/local/bin cocoapods
使用:
1.搜索cocoapods是否支持要使用的第三方类库
pod search SDWebImage(可以把pod 'SDWebImage', '~> 3.7.3' 有关版本号的代码 复制一下)
2. 切换到工程目录路径下 cd 路径
创建一个Podfile文件vim Podfile按下“i”键,进入文件编辑模式(insert模式)插入模式platform:ios,’7.0’pod 'SDWebImage', '~> 3.7.3'完成之后 ,按下esc,:wq 保存并退出
or 打开 Podfile 文件直接编辑
3. 安装Podfile文件
pod install成功之后,再次运行工程,就要使用.xcworkspace(白色文件)打开工程
4. 如果再次在Podfile文件中增加其他类库的依赖,完成之后,需要更新 Podfile
pod update
使用别人带有cocoapods管理依赖的工程
1.cd 路径 (切换到工程路径下)2.pod update (命令)
- Cocoa依赖管理器 -- 去中心化的Carthage & Cocoapods
- Carthage:去中心化的Cocoa依赖管理器
- Carthage 去中心化的Cocoa依赖管理器
- Carthage:去中心化的Cocoa依赖管理器
- iOS开发——Carthage:去中心化的Cocoa依赖管理器
- Carthage - 一个简单、去集中化的Cocoa依赖管理器
- Cocoa 新的依赖管理工具:Carthage
- Cocoa 新的依赖管理工具:Carthage
- Cocoa 新的依赖管理工具:Carthage
- 【ios开发学习】Cocoa 新的依赖管理工具:Carthage
- 豆瓣的去中心化
- 【Carthage】依赖工程管理工具
- Carthage管理依赖库
- cocoapods集成依赖库去警告
- 软件测试领域的中心化与去中心化
- 去中心化的安全分布式存储系统
- 去中心化的三个维度
- CocoaPods依赖库的使用
- 输入一个正整数,按照从小到大的顺序输出它的所有质数的因子(如180的质数因子为2 2 3 3 5 )
- centos7.3修改时区
- ViewPager实现左右无限循环效果
- Yii2.0 Cookie使用方法
- banner无限轮播
- Cocoa依赖管理器 -- 去中心化的Carthage & Cocoapods
- 遇到问题---maven---启动项目出现出现 java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoa
- windows下常用的命名
- Android与Java代码设计六大原则
- 数据库阿里连接池 druid配置详解
- 插入排序
- 温故知新之从源码探析jsp运行原理
- Java GUI编程的几种常用布局管理器
- 开篇