Cocoa 新的依赖管理工具:Carthage

本文介绍了Carthage这一轻耦合、灵活的第三方库管理工具,对比了其与Pod的不同之处,详细讲解了Carthage的安装及使用流程,包括创建Cartfile文件、编译依赖库并将其引入项目中。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

昨天搞了一下pod的安装 因为之前我都是在使用pod来进行第三方库的管理 但是拿到项目之后 竟发现这个前辈是用Carthage

说真的在这之前我从来没有用过这个玩意
因为我感觉用POD已经很好了啊 很方便啊
之后就是上网查资料 看看这个Carthage到底是个什么鬼东西

简介

轻耦合,更灵活;使用 xcodebuild 工具来编译依赖项目成二进制 Framework,再引入到项目中去。

Carthage 是由 Swift 语言写的,只支持动态框架,只支持 iOS8+。

Carthage 的大致工作流程如下:

  1. 创建一个 Cartfile 文件,写好你要哪些依赖库
  2. 执行 carthage update 命令拉取源代码并编译为 Framework
  3. 把编译后的 .framework 拖到项目中去即可 (官方是这么说的,不过更好的办法是把 Carthage 编译的 Framework 路径加入到 Build Setting 中的 Framework Search Path,详情见后文)

看完简介 我们再说正事 啊哈哈

安装Carthage只需要打开终端,输入如下指令:

$ brew update

$ brew install carthage

如果你不喜欢使用终端,也可以从网站https://github.com/Carthage/Carthage/releases下载最新版的Carthage.pkg来更新。
当你安装好Carthage后,在终端执行
$ carthage version

即可看到当前的carthage版本, 当写这篇文章的时候,Carthage的版本为0.11.0 。
现在,你已经安装好了Carthage,接下来就是在你的项目中使用carthage了:

1、通过终端进入到项目所在的文件夹:
$ cd ~/Path/Project
后面的路径替换成你的项目所在的路径即可
2、创建一个空的carthage文件:
$ touch Cartfile
此时你的项目文件夹里会创建一个名为Cartfile的文件。
3、使用xcode打开cartfile文件
$ open -a Xcode Cartfile
并在打开的文件中加入以下内容

github "Alamofire/Alamofire" ~> 3.0

github "SwiftyJSON/SwiftyJSON"

版本的含义

~> 3.0 表示使用版本3.0以上但是低于4.0的最新版本,如3.5, 3.9

== 3.0 表示使用3.0版本

>= 3.0表示使用3.0或更高的版本

如果你没有指明版本号,则会自动使用最新的版本

4、保存并关闭cart file文件,在终端执行命令
$ carthage update --platform iOS
carthage会为你下载和编译所需要的第三方库,当命令执行完毕,在你的项目文件夹中会创建一个名为Carthage的文件夹
在 ~/Carthage/Build/iOS里会出现xxx.framework文件已经为你创建好了。
当然,你也可以通过命令行进入此文件夹:
$ open Carthage

5、现在打开你的项目,点击project,选择target, 再选择上方的General,将需要的framework文件拖到 Linked frameworks and Binaries内

6、点击Build Phrase tab选项,添加相应的run script

此时,你已经可以使用导入的第三方库了
如需要使用Alamofire和SwiftyJSON,就在相应的类前添加

import Alamofire

import SwiftyJSON

即可。
现在,就开始享受Carthage吧。

转载于:https://www.cnblogs.com/lwk151124/p/5778603.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值