依賴管理工具-Carthage

Carthage是一個致力于通過一種簡單的方式亚斋,來管理我們應用的庫的工具隙弛。相較于CocoaPods,更輕量級喧伞、更容易上手蝶涩。

使用CocoaPods的童靴一定遇到過這樣的問題,pod install or update一次以后絮识,漫長的編譯就開始了绿聘。隨著項目組件化的開展,引入的pod越來越多這個編譯過程也隨之越來越長次舌。有沒有辦法能夠適當?shù)臏p少這一個過程熄攘?

項目升級到iOS8以后,Carthage的好處就呼之欲出彼念。

先來看看Carthage如何使用挪圾?

簡單使用

  1. 新建一個Cartfile,列出你需要引用的framework逐沙。
  2. 運行Carthage哲思,根據(jù)Cartfile,編譯每一個庫吩案。
  3. 將第二步產(chǎn)生的.framework拽到你的工程中棚赔。

從使用步驟可以看出,Carthage的作用主要是生成.framework徘郭,依賴還是要我們自己來處理靠益。

為什么要使用Carthage?

  1. 通過Carthage可以將一部分不常變的庫打包成framework,再引如到主工程残揉,這樣可以減少開發(fā)過程中的編譯時間胧后。
  2. 可以將一些編譯時間很長的庫打包成framework。
  3. 國內(nèi)防火墻的緣故抱环,有些庫的下載慢到一定境界壳快,這個時候,使用Carthage就是福音了镇草。
  4. 同時可以優(yōu)化CI的編譯眶痰、打包時間。

Carthage還有一個好處就是陶夜,可以與Cocoapods無縫對接凛驮。兩者可以同時使用。
當然也有一些不那么友好的地方如:

  1. 需要手動引用庫
  2. 一些第三方庫還不支持Carthage
  3. 引入的庫只能看到頭文件条辟,無法查看源碼等黔夭。

說了這么多宏胯,再來說說,具體怎么用本姥?

安裝

直接通過brew進行安裝肩袍。

brew update
brew install carthage

使用

  1. 新建Cartfile,引入需要安裝的庫婚惫。
/* ~>的使用與CocoaPods相同 */
/* 3.2.0為對應的tag */
github "SnapKit/SnapKit" ~> 3.2.0
/* 通過url直接引用 */
github "https://******/test.git"
  1. carthage update根據(jù)Cartfile拉取代碼氛赐,并Build成對應的.framework
    01.png

    在主工程目錄下先舷,會生成一個Carthage文件夾艰管,里面有兩個子文件夾
    |- Build 存放所有編譯完成的.framework文件
    |- Checkouts 存放源碼

通過--platform ios指定對應平臺的framework,可以減少無畏的編譯時間蒋川,默認是全平臺編譯牲芋。carthage update --platform ios

  1. 將Build中生成的庫拽入主工程中


    02.png
  1. 添加運行腳本,/usr/local/bin/carthage copy-framewrks捺球,并未每一個拽入主工程的framework添加一個Input Files和一個Output Files(ps: 圖最下一個紅框)

    03.png

  2. 添加Search Path


    04.png

以上缸浦,Build你的工程,可以享受Carthage給你帶來的快感了氮兵。

制作自己的Carthage庫

用過CocoaPods私有庫的同志一定會問裂逐,我們該怎么制作支持Carthage的庫呢?
簡單到難以置信

  1. 新建一個動態(tài)庫


    05.png
  2. 勾選schemes中泣栈,對應scheme的shared


    06.png
  3. 引用
github "your git url"

是的卜高,只要三步。

引用

CarthagePods —— 一個整合 CocoaPods 和 Carthage 一起使用的工具
I have a pod, I have a carthage, En...

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末秩霍,一起剝皮案震驚了整個濱河市篙悯,隨后出現(xiàn)的幾起案子蚁阳,更是在濱河造成了極大的恐慌铃绒,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,817評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件螺捐,死亡現(xiàn)場離奇詭異颠悬,居然都是意外死亡,警方通過查閱死者的電腦和手機定血,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,329評論 3 385
  • 文/潘曉璐 我一進店門赔癌,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人澜沟,你說我怎么就攤上這事灾票。” “怎么了茫虽?”我有些...
    開封第一講書人閱讀 157,354評論 0 348
  • 文/不壞的土叔 我叫張陵刊苍,是天一觀的道長既们。 經(jīng)常有香客問我,道長正什,這世上最難降的妖魔是什么啥纸? 我笑而不...
    開封第一講書人閱讀 56,498評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮婴氮,結果婚禮上斯棒,老公的妹妹穿的比我還像新娘。我一直安慰自己主经,他們只是感情好荣暮,可當我...
    茶點故事閱讀 65,600評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著罩驻,像睡著了一般渠驼。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上鉴腻,一...
    開封第一講書人閱讀 49,829評論 1 290
  • 那天迷扇,我揣著相機與錄音,去河邊找鬼爽哎。 笑死蜓席,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的课锌。 我是一名探鬼主播厨内,決...
    沈念sama閱讀 38,979評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼渺贤!你這毒婦竟也來了雏胃?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,722評論 0 266
  • 序言:老撾萬榮一對情侶失蹤志鞍,失蹤者是張志新(化名)和其女友劉穎瞭亮,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體固棚,經(jīng)...
    沈念sama閱讀 44,189評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡统翩,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,519評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了此洲。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片厂汗。...
    茶點故事閱讀 38,654評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖呜师,靈堂內(nèi)的尸體忽然破棺而出娶桦,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 34,329評論 4 330
  • 正文 年R本政府宣布衷畦,位于F島的核電站氮双,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏霎匈。R本人自食惡果不足惜戴差,卻給世界環(huán)境...
    茶點故事閱讀 39,940評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望铛嘱。 院中可真熱鬧暖释,春花似錦、人聲如沸墨吓。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,762評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽帖烘。三九已至亮曹,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間秘症,已是汗流浹背照卦。 一陣腳步聲響...
    開封第一講書人閱讀 31,993評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留乡摹,地道東北人役耕。 一個月前我還...
    沈念sama閱讀 46,382評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像聪廉,于是被迫代替她去往敵國和親瞬痘。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,543評論 2 349

推薦閱讀更多精彩內(nèi)容