form1.cn
Make a little progress every day

Mac中Carthage的安装和使用

04th of April 2017 Swift Swift+IOS 2678

Carthage 使用于 Swift 语言编写,只支持动态框架,只支持 iOS8+的Cocoa依赖管理工具。

与现在流行的 CocoaPods 不同,Carthage编译你的依赖,并提供框架的二进制.framework文件,但你仍然保留对项目的结构和设置的完整控制,Carthage不会自动的修改你的项目文件或编译设置。是一个去中心化的Cocoa依赖管理工具


安装Carthage


先更新brew

$ brew update

注,如果提示:sudo chown -R $(whoami) /usr/local

执行一下就可以,因该会执行两次不一样的目录,最后还会提示你把权限改回root


安装carthaget

$ brew install carthage


查看carthage的版本号

$ carthage version


升级carthage

$ brew upgrade carthage


卸载Carthage

$ sudo brew uninstall carthage



使用Carthage,添加MKNetworkKit-Swift扩展为例


1、通过终端进入到项目所在的文件夹:

$ cd MyIOS/


2、创建一个空的carthage文件:

$ touch Cartfile


3、使用xcode打开cartfile文件

$ open -a Xcode Cartfile

并在打开的文件中加入以下内容

github "MugunthKumar/MKNetworkKit-Swift" "master"


4、保存并关闭cart file文件,在终端执行命令

$ carthage update

carthage会为你下载和编译所需要的第三方库,当命令执行完毕,在你的项目文件夹中会创建一个名为Carthage的文件夹

在 MyIOS/ 里会出现MKNetworkKit.framework文件已经为你创建好了。

当然,你也可以通过命令行进入此文件夹:

$ open Carthage


执行update命令后,你的项目目录结构大致如下:

Cartfile:文件用来标注你需要哪些依赖库,对应版本或者 Git 分支(需要提交到 Git)。
Cartfile.resolved:文件用来跟踪项目当前所用的依赖版本号,为了保持多端开发一致(需要提交到 Git)。
Carthage:文件夹用来存放依赖库的源文件和编译后的文件(不需要提交到 Git,可以修改.gitignore文件,增加忽略 Carthage 文件夹就行了:#Carthage Carthage)。


5、引入Framework

将Carthage/Build/IOS/MKNetworkKit.framework直接拖入你的项目中


6、添加编译的额外脚本

Target—>Build Phases —>”+”—>New Run Script Phase—>添加脚本"/usr/local/bin/carthage copy-frameworks"

  

7、添加文件

Input Files—>添加路径"$(SRCROOT)/Carthage/Build/iOS/库名.framework"


8、然后可以使用https://github.com/MugunthKumar/MKNetworkKit-Swift中提供的Demo进行测试了