Carthage的用法

可以去https://github.com/Carthage/Carthage/releases下载安装

或者 brew install carthage 安装

使用Carthage

进入到项目所在文件夹

cd 项目路径

创建一个空的Carthage文件

touch Cartfile

编辑carfile文件,添加依赖框架

github "Alamofire/AlamofireImage"

保存并关闭cartfile文件,进行安装

carthage update --no-use-binaries --platform ios

安装完之后根目录会出现一个叫Carthage的文件夹,里面包含Build和Checkouts两个文件夹。

Build中/iOS路径下的就是framework包,需要自行引用进来。

Checkouts是从Github上获取来的源码,所以理论上来说你在这个文件夹里对源码进行任何的修改,再次执行 carthage build 就会根据这里的源码打包出相应的framework出来。

但需要注意的是当每次执行carthage update后这里的源码又被覆盖了。所以你有特别需要修改的地方可以加例外防止覆盖!!!! 重要

5.项目Target -> Build Setting -> Search Paths -> Framework Search Paths添加
$(PROJECT_DIR)/Carthage/Build/iOS

6.项目Target -> Build Phases -> '+' -> New Run Script Phase,
添加脚本 /usr/local/bin/Carthage copy-frameworks
添加"Input Files" $(SRCROOT)/Carthage/Build/iOS/AFNetworking.framework
(这一步一般来说都是需要做的,但有些框架会明确指出不需要加这句脚本,就不用加了)

7 项目Target -> General最底下的Linked Frameworks and Libraries里手动添加需要用的framework.

8.在需要使用的地方import "xxx"

在执行Carthage update后,控制台可能会打印这样的错误。
unable to find utility 'xcodebuild, not a developer tool or in PATH'

原因是当git源码被checkout后,carthage会进行build。此时若是执行xcodebuild发生错误多半是因为在xcode中没有设置相应的编译工具选项。需要进到xcode的Preference中去设置Command Line Tools.

最新版本0.30.1在使用facebooksdk过程中会失败。在carthage的github issue中也被提出来了。
https://github.com/Carthage/Carthage/pull/2507
原因出在FBSDKIntegrationTests这个Target中。
解决方法两个:
1.降级使用0.29版本的Carthage。
2.在Checkouts中对facebooksdk中的FBSDKIntegrationTests进行忽略,上面的链接里有具体操作步骤。

3.网络问题,有时候会遇到checkout执行了很长时间(超过30分钟)。基本上可以判定出现了网络问题,命令行中一般会出现time out或是以下图片之类的提示。

单独更新某一个框架

carthage update Alamofire

或者指定更新多个框架,空格隔开即可。
carthage update Alamofire RxSwift

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值