Cocoapods 私有庫創(chuàng)建(上)

1.Github創(chuàng)建項目

在GitHub上創(chuàng)建“wzi-specs”項目覆醇,https://github.com/wzi90921/wzi-specs.git二打,這是我們的Spec Repo(私有庫倉庫)刨肃;

說明: 我們用Cocoapod管理類庫時榕堰,Podfile文件的開頭
source 'https://github.com/CocoaPods/Specs.git'
source 'https://github.com/aliyun/aliyun-specs.git'
//當(dāng)使用我們自己的使用庫時佳励,需要指定來源慰照,如下
source 'https://github.com/wzi90921/wzi-specs.git'

在GitHub上創(chuàng)建“wzi-baseLib”,這個項目是基礎(chǔ)類庫(私有庫)腺占。https://github.com/wzi90921/wzi-baseLib.git
在GitHub上創(chuàng)建“wzi-moduleA”淤袜,這個項目是組件A(私有庫)。https://github.com/wzi90921/wzi-moduleA.git
在GitHub上創(chuàng)建“wzi-podDemo”衰伯,這個項目是主程序铡羡。https://github.com/wzi90921/wzi-podDemo.git

說明:創(chuàng)建項目時,我這邊選擇"MIT License"(選擇自己適合的License)意鲸。

通過終端命令或者SourceTree將3個項目clone到本地烦周;


image.png

2.私有庫倉庫添加在到本機

//終端執(zhí)行,將我們的私有庫倉庫添加在到本機
pod repo add wzi-specs https://github.com/wzi90921/wzi-specs.git

執(zhí)行后怎顾,通過Finder——>"前往文件夾":~/.cocoapods/repos读慎,可以看到repos文件夾里有wzi-specs的文件夾。


image.png

3.podspec文件說明

在本地“wzi-baseLib”的目錄下創(chuàng)建“Assets”槐雾,“Classes”兩個文件夾夭委,“wzi-baseLib.podspec”文件
Assets:資源文件目錄(png,xib,plist……)
Classes:代碼目錄
wzi-baseLib.podspec:私有庫的配置文件 官方文檔

image.png

wzi-baseLib.podspec 有兩種創(chuàng)建方式,
第一種方式:終端執(zhí)行募强,生成一個完整版的podspec株灸,

pod spec create wzi-baseLib

第二種方式:復(fù)制下面的內(nèi)容保存 wzi-baseLib.podspec,

Pod::Spec.new do |s|
  s.name         = "wzi-baseLib"
  s.version      = "0.0.1"
  s.summary      = "wzi-baseLib is a base lib"
  s.homepage     = "https://github.com/wzi90921"
  s.license      = "MIT"
  s.author       = {
                    "weizixiong" => "wzi90921@sina.com"
 }
  s.source     = { :git => "https://github.com/wzi90921/wzi-baseLib.git", :branch => 'master' }
  s.prefix_header_file = 'Classes/Prefix.h'
  s.source_files  = "Classes/**/*.{h,m}"
  s.requires_arc  = true
  # s.resources = ['Resources/**/*.png']
  # s.resource_bundles = {
  #   'Resources' => ['Resources/*.png'],
  # }  
  s.ios.deployment_target = "8.0"
  s.ios.framework = "UIKit"
  #s.libraries = "sqlite3","z"
  s.dependency "YTKNetwork"
  s.dependency "MJExtension"
  s.dependency "MBProgressHUD"
  s.dependency "SDWebImage"
  s.dependency "MJRefresh"
  s.dependency "YTKKeyValueStore"
  s.dependency "WZLSerializeKit"
end

配置項說明

//代碼源是 wzi-baseLib.git 的主分支
s.source= { :git => "https://github.com/wzi90921/wzi-baseLib.git", :branch => 'master' }
//代碼源是 wzi-baseLib.git, tag:"v1.0.7"的分支
s.source = { :git => "https://github.com/wzi90921/wzi-baseLib.git", :tag => "v1.0.7"}
//代碼源是 wzi-baseLib.git 的某個tag擎值,這個tag跟s.version是一樣的慌烧。
s.source = { :git => 'https://github.com/wzi90921/wzi-baseLib.git', :tag => s.version.to_s }
//跟上面類似,可能你的tag有"v",或者其他
s.source     = { :git => "https://github.com/wzi90921/wzi-baseLib.git", :tag => "v#{s.version}"}
//代碼源是本地目錄鸠儿,相對路徑/絕對路徑
s.source = { :git => "../BaseLib" }
s.source = { :git => "/Users/weizixiong/WorkPlace/Gitee_WorkPlace/BaseLib" }

說明:開發(fā)完后屹蚊,我一般先用本地目錄驗證;提交到GitHub后,指向master主分支淑翼,再驗證;最后確定了版本后品追,指向?qū)?yīng)的Tag玄括;這樣可以避免每一次修改后都要提交到GitHub;

/*
配置預(yù)編譯頭文件肉瓦,
開發(fā)類庫時遭京,該文件的內(nèi)容會被復(fù)制到“Support Files”——>"wzi-baseLib-prefix.pch";
開發(fā)過程中泞莉,
修改“Prefix.h”文件哪雕,需要執(zhí)行 pod update 才會生效;
修改“wzi-baseLib-prefix.pch”會立即生效鲫趁,但是要把新添加的內(nèi)容復(fù)制到“Prefix.h”斯嚎,否則執(zhí)行 pod update 后,新添加的內(nèi)容會沒有了挨厚。
*/
s.prefix_header_file = 'Classes/Prefix.h'
/*
s.resources 與 s.resource_bundles 這兩個配置都是指定資源目錄堡僻,類型
兩者的區(qū)別,在于s.resources會把資源文件直接拷貝到生成的App疫剃,s.resource_bundles會打包成.bundle在拷貝到生成的App钉疫;
*/

s.resources = ['Resources/**/*.png'];
[UIImage imageNamed:@"imageName"];
//有可能出現(xiàn)圖片名沖突的情況;

s.resource_bundles = {
   'Resources' => ['Resources/**/*.png'],
}
[UIImage imageNamed:@"Resources.bundle/imageName"];
//避免了圖片名沖突巢价,但是需要指定bundle
//如果項目中有引用其他的framewor牲阁、a類庫的,需加上壤躲;反則不需要
s.vendored_frameworks = 'Classes/**/*.framework'
s.vendored_libraries = 'Classes/**/*.a'
//引用系統(tǒng)的framework城菊、libraries
s.ios.framework = "CFNetwork","UIKit","JavaScriptCore","AudioToolbox"
s.libraries = "sqlite3","z"
//引用其他的類庫
s.dependency "YTKNetwork"
s.dependency "YYWebImage"
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市柒爵,隨后出現(xiàn)的幾起案子役电,更是在濱河造成了極大的恐慌,老刑警劉巖棉胀,帶你破解...
    沈念sama閱讀 218,386評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件法瑟,死亡現(xiàn)場離奇詭異,居然都是意外死亡唁奢,警方通過查閱死者的電腦和手機霎挟,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,142評論 3 394
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來麻掸,“玉大人酥夭,你說我怎么就攤上這事。” “怎么了熬北?”我有些...
    開封第一講書人閱讀 164,704評論 0 353
  • 文/不壞的土叔 我叫張陵疙描,是天一觀的道長。 經(jīng)常有香客問我讶隐,道長起胰,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,702評論 1 294
  • 正文 為了忘掉前任巫延,我火速辦了婚禮效五,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘炉峰。我一直安慰自己畏妖,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,716評論 6 392
  • 文/花漫 我一把揭開白布疼阔。 她就那樣靜靜地躺著戒劫,像睡著了一般。 火紅的嫁衣襯著肌膚如雪婆廊。 梳的紋絲不亂的頭發(fā)上谱仪,一...
    開封第一講書人閱讀 51,573評論 1 305
  • 那天,我揣著相機與錄音否彩,去河邊找鬼疯攒。 笑死,一個胖子當(dāng)著我的面吹牛列荔,可吹牛的內(nèi)容都是我干的敬尺。 我是一名探鬼主播,決...
    沈念sama閱讀 40,314評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼贴浙,長吁一口氣:“原來是場噩夢啊……” “哼砂吞!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起崎溃,我...
    開封第一講書人閱讀 39,230評論 0 276
  • 序言:老撾萬榮一對情侶失蹤蜻直,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后袁串,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體概而,經(jīng)...
    沈念sama閱讀 45,680評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,873評論 3 336
  • 正文 我和宋清朗相戀三年囱修,在試婚紗的時候發(fā)現(xiàn)自己被綠了赎瑰。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,991評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡破镰,死狀恐怖餐曼,靈堂內(nèi)的尸體忽然破棺而出压储,到底是詐尸還是另有隱情,我是刑警寧澤源譬,帶...
    沈念sama閱讀 35,706評論 5 346
  • 正文 年R本政府宣布集惋,位于F島的核電站,受9級特大地震影響踩娘,放射性物質(zhì)發(fā)生泄漏芋膘。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,329評論 3 330
  • 文/蒙蒙 一霸饲、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧臂拓,春花似錦厚脉、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,910評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至孵滞,卻和暖如春中捆,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背坊饶。 一陣腳步聲響...
    開封第一講書人閱讀 33,038評論 1 270
  • 我被黑心中介騙來泰國打工泄伪, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人匿级。 一個月前我還...
    沈念sama閱讀 48,158評論 3 370
  • 正文 我出身青樓蟋滴,卻偏偏與公主長得像,于是被迫代替她去往敵國和親痘绎。 傳聞我的和親對象是個殘疾皇子津函,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,941評論 2 355

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

  • ①新時代中國特色社會主義 Socialism with Chinese Characteristics for a...
    曹二二二餅閱讀 69評論 0 0
  • 新年里,我碰到了久未見面的表姐孤页。 表姐算是一個可以貼上“成功者”標(biāo)簽的人尔苦。30歲出頭,在法國定居行施,碩士畢業(yè)允坚,有自己...
    馥芮球閱讀 751評論 0 2
  • 《桃花心木》 鄉(xiāng)下老家屋旁,有一塊非常大的空地蛾号,租給人家種桃花心木的樹苗屋讶。 桃花心木是一種特別的樹,樹形優(yōu)美须教,高大...
    青馬文悅閱讀 571評論 1 1
  • 以UIImageView為例 首先繼承系統(tǒng)UIScrollView自定義一個UIScrollView 外部使用 只...
    SK丿希望閱讀 809評論 1 1
  • 本周有3個討論點皿渗,2個關(guān)于生活斩芭,1個關(guān)于工作。 1乐疆、鵝廠18周年搶雙十一頭條划乖,很長 2、嘮叨川普挤土,不懂政治琴庵,很短 ...
    greenbuddy閱讀 212評論 0 0