title: Carthage 安装使用方法
date: 2016-10-18 19:38:13
categories:
- Tools
- Xcode
tags: - Carthage
Carthage 依赖库管理工具
1.使用Homebrew安装Carthage之前,先对其进行更新,不然可能会安装到比较老的版本。
sudo brew update
如果没有安装可以去官方安装操作很简单 一句命令
2.安装Carthage
方法1
sudo brew install carthage
方法2
下载安装Carthage.pkg
方法3
下载Carthage,运行make install。
3.查看及升级Carthage版本
查看:carthage version
升级:brew upgrade carthage
4.卸载Carthage
sudo brew uninstall carthage
5.创建空的Cartfile文件
touch Cartfile
6.使用Xcode命令打开Cartfile文件
open -a Xcode Cartfile
7.添加依赖库
github "SVProgressHUD/SVProgressHUD" ~> 1.0
8.执行安装
(只为iOS编译framework) 不指定 会生成全平台编译framework 文件
carthage update —platform iOS
9.安装完成会在根目录下多出来几个文件
执行完毕,在Cartfile文件同级别的文件夹中生成一个名为“Carthage”文件夹和“Cartfile.resolved”文件。
打开Carthage文件夹,可以看到两个文件夹Build和Checkouts。
Cartfile.resolved:这个文件是辅助Cartfile的,需要被提交到版本库中,它有助于其他开发者使用和你相同版本的第三方库。
Build:包含每一个第三方库创建生成的framework,可以被集成到项目中,每一个framework都是依赖于源文件或者GitHub上的Releases版本。
Checkouts:这里包含的是转换成framework之前的源文件,Carthage有自己的缓存机制,所以不需要在不同的项目中对同一个的第三方库clone多次。
对于是否把Build和Checkouts文件夹提交到版本库取决于你,这不是必须的。如果提交的话,其他人clone了你的资料库就可以使用这两个文件中的内容。
不要改变Checkouts文件夹中的内容,因为如果使用carthage update 或者 carthage checkout命令的话,这个文件夹中的内容可以随时被复写,那么改动工作就白费了。如果一定要改动的话,在使用carthage update命令时,可以使用--use-submodules选项。如果加上这个选项的话,Carthage在添加每个依赖库的时候就会作为一个字模块。
如果其他人想要使用你的工程,你不需要在你的代码中提交已经编译好的framework,他们需要在check out你的工程之后执行carthage bootstrap命令。
bootstrap命令会根据Cartfile.resolved文件下载和编译依赖库的精确版本。另一方面,carthage update命令会更新项目中的第三方库的最新的编译版本,这是不可取的。
10.添加到项目中
11.其他配置
下一步选择菜单上的Build Phases,并添加一个新的Run Script,并添加以下命令:
/usr/local/bin/carthage copy-frameworks
点击Input Files下面的+号为每一个framework添加条目。
$(SRCROOT)/Carthage/Build/iOS/SVProgressHUD.framework
严格来讲,build phase对项目运行来说不是必须的,但是,这巧妙的解决了APP因为使用的frameworks包含二进制图像的iOS模拟器在提交APP Store时会被自动拒绝的问题。
12.升级指定Frameworks
carthage update SVProgressHUD