ios Carthage
使用CocoaPods来管理第三方框架很多人都知道,相对来说Carthage比较陌生,Carthage也是来管理第三方框架的,既然已经有了Cocoapods为什么还要有Carthage呢?使用Carthage有什么好处呢:
首先,CocoaPods默认会自动创建并更新你的应用程序和所有依赖的Xcode workspace。
Carthage使用xcodebuild来编译框架的二进制文件,但如何集成它们将交由用户自己判断。
CocoaPods的方法更易于使用,但Carthage更灵活并且是非侵入性的。
通俗来讲Carthage就是帮你把第三方框架编译成.framework库,但是不会集成到你的项目中去,必须手动添加.framework,而CocoaPods会把第三方框架集成到项目中去。
安装步骤:
1.终端安装Carthage命令
brew install carthage
如果你不喜欢使用终端,也可以从网站https://github.com/Carthage/Carthage/releases下载最新版的Carthage.pkg来更新。
查看Carthage版本:
carthage version
2.创建Carthage文件
touch 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.下载并编译第三方库
carthage update
如果只需要生成ios库:
carthage update --platform iOS
Carthage会自动在当前文件夹创建一个Carthage文件夹,编译好的的framework就在Carthage/Build下
5.将编译好的framework添加到项目
Linked frameworks and Binaries
动态库还要在项目中general–>Embedded Binaries 中点击+ –>add other –>选中*.framework即可
ios Carthage的更多相关文章
- IOS Carthage安装、使用
一.Carthage的安装和使用1.安装homebrew后输入如下命令 $ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercont ...
- 包管理工具Carthage使用
iOS项目中第三方开源库的工具有Cocoapods和Carthage,swift官方出了一个包管理工具SPM(Swift Package Manager). 首先,大体讲一下Cocoapods和Car ...
- Cocoa 新的依赖管理工具:Carthage
昨天搞了一下pod的安装 因为之前我都是在使用pod来进行第三方库的管理 但是拿到项目之后 竟发现这个前辈是用Carthage 说真的在这之前我从来没有用过这个玩意因为我感觉用POD已经很好了啊 很方 ...
- Carthage使用
# carthage 包管理 ## 安装过程 1) 安装homebrew ``` ruby$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githu ...
- 使用Carthage管理iOS依赖库
Carthage安装和使用和CocoaPods类似: 1.安装: 终端执行以下命令: $ brew update $ brew install carthage 查看Carthage的版本号: $ c ...
- iOS依赖库管理工具之Carthage
在iOS开发中,我们常会用CocoaPods来进行依赖库的管理.CoaoaPods 是一套整体解决方案,我们在 Podfile 中指定好我们需要的第三方库,然后 CocoaPods 就会进行下载,集成 ...
- iOS - CocoaPods 和 Carthage 的比较
CocoaPods 好处? 开发 iOS 项目不可避免地要使用第三方开源库,CocoaPods 的出现使得我们可以节省设置和更新第三方开源库的时间 在引入第三方库时它可以自动为我们完成各种各样的配置, ...
- iOS开发进阶 - 使用Carthage管理iOS第三方库
移动端访问不佳,请访问我的个人博客 最近在研究Swift,一不小心发现一个好的的管理iOS第三方库Carthage,就跟第一次使用CocoaPods时一样兴奋不已,在研究了大半天后终于能用了,使用起来 ...
- Carthage 包管理工具,另一种敏捷轻快的 iOS & MAC 开发体验 | SwiftCafe 咖啡时光
说起 iOS 开发的包管理,大家就不由得会想起 CocoaPods, 它确实是一个强大的工具.但这次咱们来关注另外一个包管理工具 Carthage,如果说 CocoaPods 像一个航母,一应俱全,坚 ...
随机推荐
- grails项目获取前后台的值
grails项目中前台传值给后台: 加入我有a.gsp这个页面,a.gsp中有如下代码: 姓名:<input type="text" name="xing" ...
- 我用ANDROID STUDIO开发,页面上总包这个警告,很烦!网上说是sdk版本问题,但是我是基于25开发的,最小版本也是19,有没有老司机啊?3克油
- 【BZOJ-2653】middle 可持久化线段树 + 二分
2653: middle Time Limit: 20 Sec Memory Limit: 512 MBSubmit: 1298 Solved: 734[Submit][Status][Discu ...
- javascript基本对象
1 String对象 创建对象 var string1 = new String("Hello"); var string2 = "Hello" //也可以创建 ...
- This month Calendar
package fourth;import java.text.DateFormatSymbols;import java.util.*;public class CalendarTest { pub ...
- ASP.NET MVC和EF集成AngularJS开发
参考资料: 如何在ASP.NET MVC和EF中使用AngularJS AngularJS+ASP.NET MVC+SignalR实现消息推送 [AngularJs + ASP.NET MVC]使用A ...
- Ajax我选择这样入门
什么是AJAX? AJAX的意思就是异步的JavaScript和XML.简而言之,它是使用XMLHttpRequest对象与服务器端通信的脚本语言.它可以发送及接收各种格式的信息,包括JSON.XML ...
- DOM0,DOM2,DOM3 事件基础知识
事件是javascript和HTML交互基础, 任何文档或者浏览器窗口发生的交互, 都要通过绑定事件进行交互; 事件有DOM0, DOM2和DOM3的区分(别问我怎么少了一个DOM1, 也没找到DOM ...
- Java线程的概念
1. 计算机系统 使用高速缓存来作为内存与处理器之间的缓冲,将运算需要用到的数据复制到缓存中,让计算能快速进行:当运算结束后再从缓存同步回内存之中,这样处理器就无需等待缓慢的内存读写了. 缓 ...
- Codility NumberSolitaire Solution
1.题目: A game for one player is played on a board consisting of N consecutive squares, numbered from ...