第三方框架管理工具 Carthage

什么是 carthage

Carthage is intended to be the simplest way to add frameworks to your Cocoa application.


Carthage 的作用也 cocoapods 类似但是有有所不一样。

在iOS开发中,我们常会用CocoaPods来进行依赖库的管理。CoaoaPods 是一套整体解决方案,我们在 Podfile 中指定好我们需要的第三方库,然后 CocoaPods 就会进行下载,集成,然后修改或者创建我们项目的 workspace 文件。
  相比之下,Carthage 就要轻量很多,它也需要一个叫做 Cartfile 的描述文件,但 Carthage 不会对我们的项目结构进行任何修改,更不多创建 workspace。它只是根据我们描述文件中配置的第三方库,将它们下载到本地,然后使用 xcodebuild 构建成 framework 文件。然后由我们自己将这些库集成到项目中。Carthage使用的是一种非侵入性的哲学。作为开发者,必须在 Carthage 将第三方库构建完成后,手动的关联到项目中。
  另外 Carthage 除了非侵入性,它还是去中心化的,它的包管理不像 CocoaPods 那样,有一个中心服务器(cocoapods.org),来管理各个包的元信息,而是依赖于每个第三方库自己的源地址,比如 Github。这样也是有利有弊,好处就是我们对包管理不再依赖中心服务器,不会受中心服务器信息量和稳定性的限制(尤其是在我们这里的网络访问状况问题),弊端嘛,就是我们想查找第三方库的时候,也没有一个中心服务器来帮助我们进行索引,而是必须从网络上自行查找。

安装

$ brew update 
$ brew install carthage

查看版本

$ carthage version

使用

  • step 1 :
    到终端切换到工程目录,输入命令 $ touch Cartfile创建 Carfile文件
  • step 2 :
    $ open -a Xcode Cartfile打开改文件 加入需要的第三方库
github "Alamofire/Alamofire"
github "SwiftyJSON/SwiftyJSON"
git "[https://github.com/AFNetworking/AFNetworking.git](https://github.com/AFNetworking/AFNetworking.git)"

  • step 3:
    下载编译
$ Carthage update --platform iOS

Carthage->Build ->iOS 下就有所需要的库

  • step 4:
    工程内使用
    把.framework等库文件拖到工程里,然后在 Target-> Build Phases 下添加 New Run Script Phase
    3170372-afbdfd3ce96f411f.png
    添加脚本

    Shell 下面添加/usr/local/bin/Carthage copy-frameworks
    Input Files 下添加$(SRCROOT)+ 第三方框架库文件路径
    3170372-5e78382b7286bd83.png
    具体内容

注意:如果第三方框架中有 swift 会在运行时报错

3170372-56b2a45c1312c707.png
报错

这是更改一下配置
3170372-e525967a502b3107.png
总是嵌入 swift 标准库

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值